/* couleurs */
:root {
    --blanc: #fff;
    --noir: #020306;
    --jaune: #F8EC00;

}
/* general */
.right{
    float: right;
}
.left{
    float: left;
}
.clear{
    clear: both;
}
/* section */
section{
    padding: 20px 20px !important;
    scroll-margin-top: 100px;
}
/* contact form */
form.wpcf7-form input:focus{
    outline: none !important;
}
form.wpcf7-form input.wpcf7-submit,
button#tarteaucitronManager{
    color: var(--jaune);
    border-color: var(--jaune);
}
form.wpcf7-form input.wpcf7-submit{
    text-transform: uppercase;
    font-weight: bold;
}
form.wpcf7-form input.wpcf7-submit:hover,
button#tarteaucitronManager:hover{
    color: var(--noir);
    background-color: var(--jaune);
}
.wpcf7-response-output{
    color: var(--blanc);
}
/* mentions */
body.page-id-91,
body.page-id-3{
    background-color: var(--noir);
    color: var(--blanc);
}
body.page-id-91 h1,
body.page-id-3 h1{
    text-transform: uppercase;
}
body.page-id-91 #content,
body.page-id-3 #content{
    margin-bottom: 75px;
}
body.page-id-91 #content a,
body.page-id-3 #content a{
    color: var(--jaune);
}

/* =========================================
   Liste des concerts
   ========================================= */

.concerts-liste {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	max-width: 1200px;
	margin: 0 auto;
}

.concerts-item {
	display: flex;
	flex-direction: column;
	background-color: var(--noir);
	color: var(--blanc);
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.concerts-item:hover {
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

.concerts-item__affiche {
	width: 100%;
	aspect-ratio: 3 / 4;
	overflow: hidden;
}

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

.concerts-item__contenu {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.5rem;
	padding: 1.25rem 1.5rem 1.75rem;
	flex-grow: 1;
}

.concerts-item__date {
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--jaune);
	font-weight: 600;
	margin: 0;
}

.concerts-item__intitule {
	font-size: 1.3rem;
	font-weight: 700;
	margin: 0;
	color: var(--blanc);
}

.concerts-item__ville {
	font-size: 0.95rem;
	color: var(--blanc);
	opacity: 0.8;
	margin: 0;
}

.concerts-item__bouton {
	margin-top: auto;
	margin-top: 0.75rem;
	display: inline-block;
	padding: 0.65rem 1.5rem;
	background-color: var(--jaune);
	color: var(--noir);
	font-weight: 700;
	text-decoration: none;
	border-radius: 50px;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.concerts-item__bouton:hover {
	background-color: var(--blanc);
	color: var(--noir);
	transform: scale(1.05);
}

.concerts-liste--solo {
	grid-template-columns: minmax(0, 1fr);
	justify-content: center;
	max-width: 380px;
}

/* Tablette : 2 colonnes */
@media (max-width: 900px) {
	.concerts-liste {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5rem;
	}
}

/* Mobile : 1 colonne */
@media (max-width: 600px) {
	.concerts-liste {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		padding: 0 1rem;
	}
}