/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1.3
*/

/* ==========================================================================
   Membres — front-end grid ([membres_grid])
   ========================================================================== */

.membres-grid-wrap {
	margin: 2rem 0;
}

/* Search bar */
.membres-search {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	align-items: center;
	margin-bottom: 1rem;
}

.membres-search-input {
	flex: 1 1 240px;
	padding: .6rem .8rem;
}

.membres-search-submit {
	padding: .6rem 1.2rem;
	cursor: pointer;
}

.membres-search-reset {
	font-size: .9em;
	white-space: nowrap;
}

/* A–Z alphabet filter */
.membres-alpha {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .15rem .35rem;
	margin: 1rem 0 1.25rem;
}

.membres-alpha-letter {
	display: inline-block;
	padding: .15rem .4rem;
	font-weight: 600;
	line-height: 1;
	border-radius: 4px;
	text-decoration: none;
}

.membres-alpha-letter:hover:not(.is-disabled) {
	background: #f2f2f2;
}

.membres-alpha-letter.is-active {
	background: #1e73be;
	color: #fff;
}

.membres-alpha-letter.is-disabled {
	opacity: .3;
	pointer-events: none;
	cursor: default;
}

.membres-count {
	margin: 0 0 1rem;
	font-size: .9em;
	opacity: .8;
	text-align: center;
}

/* Grid: 3 per row on desktop (via --membres-cols), 2 on tablet, 1 on mobile */
.membres-grid {
	display: grid;
	grid-template-columns: repeat(var(--membres-cols, 3), 1fr);
	gap: 1.25rem;
}

@media (max-width: 900px) {
	.membres-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
	.membres-grid { grid-template-columns: 1fr; }
}

/* Cards */
.membre-card,
.annee-card {
	padding: 1.25rem;
}

.membre-entreprise {
	margin: 0 0 .35rem;
	font-size: 1.15rem;
	line-height: 1.25;
}

.membre-contact {
	margin: 0;
	font-weight: 600;
}

/* ==========================================================================
   Liste par année — front-end grid ([annees_grid])
   ========================================================================== */

.annees-grid-wrap {
	margin: 2rem 0;
}

/* Grid: 5 per row on desktop (via --annees-cols), stepping down responsively */
.annees-grid {
	display: grid;
	grid-template-columns: repeat(var(--annees-cols, 5), 1fr);
	gap: 1.25rem;
}


.annee-annee {
	margin: 0 0 .35rem;
	font-size: 1.15rem;
	line-height: 1.25;
}

.annee-nom {
	margin: 0;
	font-weight: 600;
}

/* Pagination */
.membres-pagination {
	margin-top: 2rem;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: .35rem;
}

.membres-pagination .page-numbers {
	display: inline-block;
	padding: .45rem .8rem;
	border: 1px solid #e2e2e2;
	border-radius: 6px;
	text-decoration: none;
	line-height: 1;
}

.membres-pagination .page-numbers.current {
	background: #1e73be;
	border-color: #1e73be;
	color: #fff;
}

.membres-pagination a.page-numbers:hover {
	background: #f2f2f2;
}

.membres-pagination .page-numbers.disabled {
	opacity: .4;
	cursor: default;
}

