
/* Theme Name: Boal Child Theme */
/* Theme URI: http://boal.nanoagency.co */
/* Description: Child theme of Boal */
/* Author: Nano Agency */
/* Author URI: http://nanoagency.co */
/* Template: boal */
/* Version: 1.0.0 */
a {
    color: #163074;
}
a:active {
    color: #f4cb82;
}
/***** avoid download file on homepage ****/
.home .download-attachments {
    display: none;
}


ul {
    list-style-type: square;
}
.alignleft {
    float: left;
}

.alignright {
    float: right;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

figure.wp-caption.alignleft,
img.alignleft {
    margin: 5px 20px 5px 0;
}

.wp-caption.alignleft {
    margin: 5px 10px 5px 0;
}

figure.wp-caption.alignright,
img.alignright {
    margin: 5px 0 5px 20px;
}

.wp-caption.alignright {
    margin: 5px 0 5px 10px;
}

img.aligncenter {
    margin: 5px auto;
}

img.alignnone {
    margin: 5px 0;
}

.wp-caption .wp-caption-text,
.entry-caption,
.gallery-caption {
    color: #757575;
    font-size: 12px;
    font-style: italic;
    font-weight: 300;
    margin: 0 0 24px;
}

div.wp-caption.alignright img[class*="wp-image-"] {
    float: right;
}

div.wp-caption.alignright .wp-caption-text {
    padding-left: 10px;
}

img.wp-smiley,
.rsswidget img {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}

.wp-caption.alignleft + ul,
.wp-caption.alignleft + ol {
    list-style-position: inside;
}
.hentry.sticky:not(.has-post-thumbnail) {
    padding-top: -webkit-calc(7.6923% + 24px);
    padding-top: calc(7.6923% + 24px);
}
.hentry.sticky:not(.has-post-thumbnail) {
    padding-top: -webkit-calc(7.6923% + 24px);
    padding-top: calc(7.6923% + 24px);
}
.sticky-post {
    letter-spacing: 0.04em;
    text-transform: capitalize;
    color: #2fc2e3;
    padding-right: 10px;
}
.sticky .posted-on {
    display: none;
}
.updated:not(.published) {
    display: none;
}
.hentry.sticky:not(.has-post-thumbnail) {
    padding-top: 30px;
}
.entry-content img, .entry-summary img, .comment-content img, .widget img, .wp-caption{
    max-width: 100%;
    height: auto;
}
.gallery {
    margin-bottom: 1.6em;
}
.gallery-item {
    display: inline-block;
    padding: 1.79104%;
    text-align: center;
    vertical-align: top;
    width: 100%;
}
.gallery-columns-2 .gallery-item {
    max-width: 50%;
}
.gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
    max-width: 25%;
}
.gallery-columns-5 .gallery-item {
    max-width: 20%;
}
.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}
.gallery-icon img {
    margin: 0 auto;
}
.gallery-caption {
    color: rgba(51, 51, 51, 0.7);
    display: block;
    font-family: "Noto Sans",sans-serif;
    font-size: 1.2rem;
    line-height: 1.5;
    padding: 0.5em 0;
}
.gallery-columns-6 .gallery-caption, .gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption {
    display: none;
}
.bypostauthor .text-user{
    color:#ED145B;
}

.says, .screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    overflow-wrap: normal;
    position: absolute;
    width: 1px;
}
.rtl .archive-blog .article-meta .posted-on{
    padding-left: 15px;
}
/*--------------------------------------------------------------------------------------------------------------------*/
body .alignfull {
    width: 100vw;
    max-width: none;
    margin-left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

body .alignwide {
    margin: 0 -200px;
    max-width: none;
}

.alignfull > img,
.alignwide > img {
    max-width: none;
    width: 100%;
}
.wp-block-column:not(:last-child){
    margin-right: 0;
}
.wp-block-column:nth-child(2n+1) {
    margin-right: 0px;
}
.wp-block-column:not(:first-child){
    margin-left: 0;
}
.wp-block-separator.is-style-dots:before {
    content: '\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c\e83c';
    font-family: "fontello";
    color: #928a97;
    font-size: 12px;
    letter-spacing: 7.35px;
    padding-left: 2px;
    font-weight: 300;
}

.wp-block-separator.is-style-dots {
    text-align: left;
    max-width: 50%;
    height: 14px;
    line-height: 10px;
    overflow: hidden;
}

.wp-block-image{
    margin: 0;
}
.wp-block-column{
    padding:0 7.5px;
    margin-bottom: 0;
}
/* Colums */
.wp-block-columns {
    margin-right: -7.5px;
    margin-left: -7.5px;
}


/* Style bg */
.style-bg {
    position: relative;
    display: block;
    padding: 5.9em 0;
}

.style-bg:before {
    content: '';
    position: absolute;
    left: -10000px;
    right: -10000px;
    top: 0;
    bottom: 0;
    background: #ddd;
    display: block;
    z-index: 1;
}

.style-bg > * {
    position: relative;
    z-index: 2;
}

.style-bg-left {
    position: relative;
    display: block;
    padding: 5.9em 0 5.2em 0;
}

.style-bg-left:before {
    content: '';
    position: absolute;
    left: -10000px;
    right: -100px;
    top: 0;
    bottom: 0;
    background: #ddd;
    display: block;
}

.style-bg-top {
    position: relative;
    display: block;
    padding: 6.4em 0 6.4em 0;
}

.style-bg-top:before {
    content: '';
    position: absolute;
    left: -10000px;
    right: -10000px;
    top: 0;
    bottom: 0;
    background: #ddd;
    display: block;
    z-index: 0;
}

.style-bg-top > * {
    position: relative;
}

.style-bg.padding {
    padding: 6.4em 0 5.2em 0;
}

.style-bg.padding .extra_descr {
    margin-bottom: 50px;
}

.style-bg.padding .wp-block-button {
    margin: 1.6em 0 1.8em 0;
}

.wp-block-table {
    width: 100%;
}

/*****************************************************************************************************************************************/
/*************************************************************** CUSTOM CSS*************************************************************/
/***************************************************************************************************************************************/
/******* RS FEED *********/
.sfsi_shortcode_container, .norm_row {
    float: none !important;
}

/***********************/
/************************************************************** COLORS ******************************************************************/
.so-widget-sow-button-atom-4f68d82c4768 .ow-button-base a {
    border-color: #3886ee #2f80ed #2a255d #2f80ed;
	background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #2a255d), color-stop(1, #75abf3));
}
/*.site-title a {
    color: #2a255d;
}
.site-description {
    color: #9c892a;
}*/

.post-cat a {
    background: #2a255d;
}
.btn-read:hover {
    background: #2a255d;
    border: 1px solid #2a255d;
}
.sticky-post {
    color: #2a255d;
}
/* .entry-title>a:hover { */
    /* color: #2a255d; */
/* } */
/****************************** header ***********************************/
/******** scroll to top *************/
#masthead {
    position: relative;
}
.hook-to-top {
    position: fixed;
    bottom: 5%;
    right: 5%;
    font-size: 40px;
    z-index: 99;
}
/*************************************/

.header-left .header-content-logo {
    align-items: center;
}
.quote {
    font-size: 20px;
}
.quote-block {
    margin: auto;
    text-align: center;
	width: 700px;
	max-width: 100%;
}
.quote-block p.quote {
    margin: auto;
}
.searchform-mini {
    padding-top: 0;
    padding-left: 0;
    padding: 20px;
    margin: auto;
    width: 100px;
}
.so-widget-sow-button-atom-b91a6be2772c .ow-button-base a{
	padding: 20px 7px;
}
.ow-icon-placement-left.ow-button-hover {
    width: 170px;
}
.so-widget-sow-button-atom-b91a6be2772c .ow-button-base a.ow-button-hover:hover{
	background: none;
    background-color: #6a7cab;
    background: -ms-linear-gradient(bottom, #12275d, #1a3988);
    background: -moz-linear-gradient(center bottom, #12275d 0%, #1a3988 100%);
    background: -o-linear-gradient(#1a3988, #12275d);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1a3988', endColorstr='#12275d', GradientType=0);
    border-color: #6a7cab;
}
/******************************************************************** HOMEPAGE *********************************************************/
.has-padding-top {
    padding-top: 30px;
}
.home .archive-blog .homepage-title{
    margin-top: 0;
}
#ctf {
    overflow: auto;
    max-height: 450px;
}
#ctf::-webkit-scrollbar-track
{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    border-radius: 10px;
    background-color: #F5F5F5;
}

#ctf::-webkit-scrollbar
{
    width: 12px;
    background-color: #F5F5F5;
}

#ctf::-webkit-scrollbar-thumb
{
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    background-color: #555;
}
h1, h2, h3, h4, h5, h6 {
    margin-bottom: 30px;
}
.timely {
    padding: 30px 0px;
}
.homepage-title{
	position: relative;
	border-bottom: 1px solid #ecede7;
	padding-bottom: 10px;
	margin-left: 15px;
}
.homepage-title:after{
	content: "";
    position: absolute;
    left: 0;
    width: 50px;
    height: 2px;
    background: #9c892a;
    bottom: 0;
}
.home .main-content {
    padding-bottom: 0px;
}
/************************** IMG Style ***************************/
.lazy {
    border-radius: 12px 0px;
}
/************************** SOUS MENU ******************/
#na-menu-primary ul>li>ul>li a {
    text-transform: none;
}
#na-menu-primary ul>li>ul{
	min-width: 380px;
	max-width: 100%;
}
/******************** articles partenaires ****************/
/*.articles-wrapper {
    display: flex;
    max-width: 100%;
    flex-wrap: wrap;
}

.articles-wrapper .post-item {
    flex-basis: 31%;
    margin: 10px;
}*/
.post-cat {
    text-transform: capitalize;
    position: absolute;
    top: 5px;
    left: 5px;
}
.post-item:hover .bgr-item {
    background: rgba(0,0,0,0.5);
    opacity: 1;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}
.articles-wrapper img {
    width: 438px;
    max-width: 100%;
    height: auto;
}

.articles-wrapper .post-grid{
    height: 500px;
    min-height: 100%;
}
/******************** slider *************************/
.caption-wrap strong, .metaslider a {
    color: white;
}
.metaslider .caption-wrap {
    bottom: 5% !important;
}
.caption-wrap em {
    color: #c7b6b6;
}
.metaslider .caption-wrap{
    background: #18162f !important;
    line-height: 1.6em !important;
    left: 40px !important;
    width: 90% !important;
    border-radius: 12px 0 !important;
    opacity: 1 !important;
}
.slides img {
    border-radius: 32px 0px;
}
/***************************************************************** ARCHIVES *********************************************************/

/********************************************************************** Content list template ****************************************/
/*.post-list .wp-post-image {
    width: auto !important;
}*/
.post-image img {
    border-radius: 12px 0px;
}
/*********************************************************************** PAGE ***************************************************************/
#content {
    margin-bottom: 60px;
	min-height: 85vh;
}
/********************************************************************** PAGE - SIDEBAR **********************************************************/
/* sidebar-page { */
    /* background: #eee; */
    /* border: solid 1px #ddd; */
/* } */
.sidebar-page-inner {
    padding: 30px;
}
/* #sidebar_list li{ */
    /* border-bottom: solid 1px #9c892a; */
/* } */
.sidebar ul li{
	padding: 20px 0;
}
.sidebar ul li:last-child {
    padding-bottom: 15px;
}
.sidebar_list .page_item {
    margin-left: 20px;
	list-style: circle;
}
/* #sidebar_list li:after, .page_parent:after { */
    /* content: ''; */
    /* width: 280px; */
    /* background: #9c892a; */
    /* height: 1px; */
    /* position: absolute; */
    /* bottom: 0; */
    /* left: 0; */
/* } */
.sidebar_list .current_page_item, .sidebar_list .current_page_item a{
	color: #9c892a;
}
.current_page_item .children a {
    color: inherit;
}
.sidebar-page {
    background-color: #d3d3d340;
}
.page_item .children {
    display: none;
}
.current_page_item .children {
    display: block;
}

/********************************************************************** SINGLE **********************************************************/
.widgettitle::after, .entry_pagination .page-numbers:hover i {
    background: #9c892a;
}
#na-menu-primary ul.mega-menu>li>a:hover, #na-menu-primary ul.mega-menu>li>a:focus, .entry_pagination .page-numbers:hover, #na-menu-primary ul>li:hover[class*="-has-children"]>a:before, .btn-mini-search:hover, #na-menu-primary ul>li>a:hover, #na-menu-primary ul>li>a:focus, .entry-title>a:hover, #na-menu-primary ul>li>ul li[class*="-has-children"]:hover:after, #na-menu-primary ul>li.current-menu-item>a, #na-menu-primary ul>li.current-menu-item[class*="-has-children"]>a:before, #na-menu-primary ul>li.current-menu-item:hover>a, #na-menu-primary ul>li.current-menu-item:focus>a{
    color: #9c892a;
}
.post-tran .entry-title a:hover, .post-tran .article-meta a:hover, .post-tran .article-meta .fa:hover, .byline:hover i, .posted-on:hover i, a:hover, a:focus, .article-meta a:hover{
	color: #efda71;
}

/****************************************************************** CATEGORY ************************************************************/
.archive-blog .post-cat {
    text-transform: capitalize;
    display: block;
    left: 5px;
    position: absolute;
    top: 5px;
    max-width: 250px;
	white-space: initial;
}
.cat-header, .page-header {
    padding-top: 40px;
    padding-bottom: 40px;
    margin-bottom: 0;
}
.title-page, .title-cat {
    text-align: center;
    display: block;
    width: 100%;
}
/********************************************************* PAGINATION ***********************************************************/
.pagination .current {
    color: #fff;
    background: #2a255d;
    border: 1px solid #2a255d;
}

.pagination .nav-links a:hover {
    color: #fff;
    background: #2a255d;
    border: 1px solid #2a255d;
}
/********************************************************* IMG FILTRE **********************************************************/
.bg-rgb {
    background: #2a255d;
	opacity: 0.5;
}
/******************************************************** STYLE TABLE *********************************************************/
.tablepress tfoot th, .tablepress thead th {
    background-color: #cec07cd4;
}
.tablepress .sorting:hover, .tablepress .sorting_asc, .tablepress .sorting_desc {
    background-color: #aba174;
}
/*.dataTables_wrapper {
    background-color: #f9f9f9;
    padding: 40px;
    border-radius: 32px 0px;
}*/
th:first-child {
    border-radius: 20px 0 0;
}
tr:last-child td:last-child {
    border-radius: 0 0 20px;
}
/************************************************************************** FOOTER ***********************************************/
#sfsi_holder {
    width: 0 !important;
}
footer a {
    color: white;
}
#na-footer p {
    color: white;
}
/************************************************************* RESPONSIVE ************************************************************/
@media(max-width: 1000px){}
@media(max-width: 1200px){
	#na-menu-primary ul>li>a {
		font-size: 12px;
	}
	.sidebar_list li:after, .page_parent:after{
		width: 240px;
	}
}
@media(max-width: 991px){
	.slicknav_btn {
		top: 15px;
		padding-left: 0;
	}
	.quote-block {
		margin: auto;
		text-align: center;
		padding: 20px 0px;
	}
	.header-left .header-middle {
		display: block;
	}
	.ow-button-base.ow-button-align-right {
		text-align: center;
	}
	.second-on-tablet{
		order: 2;
	}
	.first-on-tablet{
		order: 1;
    }
    /**************** articles partenaires ***********/
    .articles-wrapper .post-grid {
        width: 470px;
        max-width: 100%;
       /* margin: auto;*/
    }
}
@media(max-width: 768px){
	.searchform-mini.searchform-moblie {
		bottom: 0;
		top: unset;
		right: -30px;
	}
	i.ti-search {
		font-size: 20px;
	}
}
@media(max-width: 550px){
	.caption em, .caption br {
        display: none;
    }
    .metaslider .caption {
        padding: 8px 14px;
    }
}
@media(max-width: 480px){
	.post-cat a {
        font-size: 9px;
    }
    .archive-blog .post-cat>a {
        margin-bottom: 0px;
    }
    .archive-blog .post-cat {
        left: 0;
        top: 0;
    }
    .articles-wrapper .post-grid {
        height: auto;
    }
}

#metaslider_11836 .slides > li .caption-wrap {
    cursor: pointer;
} 

.press-section {
    margin: 50px 0 20px 0;
}

.press-section .article-row {
    margin-bottom: 20px;
}

.press-section .article-row a img {
    opacity: 0.5;
    transition: all ease 0.3s;
    border-radius: 12px 0px;
}

.press-section .article-row a:hover img {
    opacity: 1;
}

.press-section .article-row a .text-col h3 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
    margin-top: 0;
}

.press-section .article-row .inside-article-row {
    display: flex;
}

.press-section .article-row a .text-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.press-section .article-row a .text-col p {
    font-size: 14px;
    line-height: 24px;
    color: #8e8e95;
}

/* ===== Design tokens (couleurs de marque) ===== */
:root {
    --color-primary: #2e2b7a;       /* bleu AFEP principal */
    --color-primary-dark: #1f1d54;  /* variante survol/foncée */
    --color-accent: #a4952a;        /* doré/olive AFEP (barres de titre) */
}

/* Style de titre "Barre soulignée (AFEP)" — activable sur tout bloc Titre via le panneau Styles */
.wp-block-heading.is-style-afep-underline {
    position: relative;
    padding-bottom: 14px;
    margin-bottom: 22px;
}
.wp-block-heading.is-style-afep-underline::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background: var(--color-accent);
}

/* Query Loop "Actualités" (homepage) — card grid with category badge overlay */
.actu-title { margin-bottom: 24px; }
/* Force a clean 3-column grid, overriding core flex/flow layout (negative margins, min-width) */
.actu-query { overflow: visible; }
.actu-query .wp-block-post-template {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin: 0 !important;
    padding: 0;
    list-style: none;
    max-width: 100%;
}
.actu-query .wp-block-post-template > li {
    margin: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
}
@media (max-width: 991px) { .actu-query .wp-block-post-template { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .actu-query .wp-block-post-template { grid-template-columns: 1fr; } }
/* Variante colonne : mêmes cartes, empilées verticalement (1 colonne) */
.actu-query--col .wp-block-post-template { grid-template-columns: 1fr; }
/* Front page: keep the page <h1> in the DOM for screen readers but hide it visually
 * (so the page still has exactly one h1). Set a meaningful page title in wp-admin. */
body.home .container > h1:first-child {
    position: absolute; width: 1px; height: 1px; overflow: hidden;
    clip: rect(1px,1px,1px,1px); clip-path: inset(50%); white-space: nowrap;
}
.actu-query .actu-card-media {
    position: relative; overflow: hidden;
    aspect-ratio: 3 / 2;
    border-radius: 8px; /* coins légèrement arrondis (moderne) */
    /* Fallback placeholder shown when a post has no featured image (matches prod) */
    background: #ececec url(/wp-content/uploads/pexels-mikhail-nilov-8846033-scaled-1.jpg) center/cover no-repeat;
}
.actu-query .actu-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* Carte entièrement cliquable → le placeholder (sans image) mène à l'article, comme la vraie image.
 * Le lien du titre est "étiré" sur toute la carte via ::after. */
.actu-query .actu-card { position: relative; }
.actu-query .actu-card .actu-card-title a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}
/* Le badge catégorie garde son propre lien (vers l'archive de la catégorie) */
.actu-query .actu-cat-badge { z-index: 2; }
.actu-query .actu-cat-badge {
    position: absolute; top: 14px; left: 14px; margin: 0;
    background: var(--color-primary); padding: 6px 14px;
    border-radius: 4px; /* fond catégorie légèrement arrondi */
    font-size: 12px; letter-spacing: .04em; text-transform: uppercase; line-height: 1.2;
}
.actu-query .actu-cat-badge a { color: #fff; text-decoration: none; }
.actu-query .actu-card-title { margin: 16px 0 10px; font-size: 18px; line-height: 1.35; }
.actu-query .actu-card-title a { color: var(--color-primary); text-decoration: none; }
.actu-query .actu-card-title a:hover { text-decoration: underline; }
.actu-query .wp-block-post-excerpt { color: #8e8e95; font-size: 14px; line-height: 24px; margin: 0 0 4px; }
.actu-query .wp-block-post-excerpt__more-link { display: none; } /* keep only the separate button */
/* Read More block IS the <a> (class actu-readmore / wp-block-read-more) */
.actu-query .wp-block-read-more {
    display: inline-block; margin-top: 12px; padding: 8px 18px;
    border: 1px solid #ddd; font-size: 12px; letter-spacing: .05em;
    text-transform: uppercase; color: #333; text-decoration: none;
}
.actu-query .wp-block-read-more:hover { background: var(--color-primary); color: #fff; border-color: var(--color-primary); }

/* Pattern "4 colonnes par catégorie" */
.actu-cols .actu-col-title {
    font-size: 18px; color: var(--color-primary); margin: 0 0 14px;
    padding-bottom: 8px; border-bottom: 2px solid var(--color-primary);
}
.actu-catlist .wp-block-post-template { display: block; margin: 0; padding: 0; list-style: none; }
.actu-catlist .wp-block-post-template > li { margin: 0 0 12px; }
.actu-catlist .wp-block-post-title { font-size: 14px; line-height: 1.4; margin: 0; }
.actu-catlist .wp-block-post-title a { color: #333; text-decoration: none; }
.actu-catlist .wp-block-post-title a:hover { color: var(--color-primary); text-decoration: underline; }

/* Header CTA "Adhérer à l'AFEP" (remplace le widget SiteOrigin Button supprimé) */
.btn-adherer {
    display: inline-block; background: var(--color-primary); color: #fff;
    padding: 10px 18px; border-radius: 3px;
    font-size: 14px; font-weight: 600; line-height: 1;
    text-decoration: none; white-space: nowrap;
}
.btn-adherer:hover, .btn-adherer:focus { background: var(--color-primary-dark); color: #fff; }

/* Bouton submit Contact Form 7 — couleur de marque */
.wpcf7 input[type="submit"], .wpcf7-submit {
    background: var(--color-primary); color: #fff; border: 0;
    padding: 10px 24px; border-radius: 3px;
    font-size: 14px; font-weight: 600; cursor: pointer; transition: background .15s;
}
.wpcf7 input[type="submit"]:hover, .wpcf7-submit:hover { background: var(--color-primary-dark); }

/* Icônes réseaux sociaux ([afep_social]) */
.afep-social { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 0; margin: 0; }
/* !important : bat les règles thème `.sidebar ul li` / `:first-child` (padding/bordure asymétriques
 * qui décalaient verticalement la 1re icône — Mastodon) */
.afep-social li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none; line-height: 0 !important; list-style: none; }
.afep-social li::before, .afep-social li::after { content: none; }
.afep-social a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; border-radius: 50%;
    background: var(--color-primary); color: #fff; transition: background .15s;
}
.afep-social a:hover, .afep-social a:focus { background: var(--color-primary-dark); color: #fff; }
.afep-social svg { display: block; width: 19px; height: 19px; }

/* Accessibility: skip-to-content link (hidden until keyboard focus) */
.skip-link.screen-reader-text {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: 100000;
}
.skip-link.screen-reader-text:focus {
    left: 6px;
    top: 6px;
    width: auto;
    height: auto;
    /* reset du masquage .screen-reader-text du thème (clip/overflow), sinon reste invisible au focus */
    clip: auto;
    clip-path: none;
    overflow: visible;
    padding: 12px 20px;
    background: #fff;
    color: #111;
    border-radius: 3px;
    box-shadow: 0 0 4px rgba(0, 0, 0, .35);
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
}
