/*
Theme Name: Hellsquad – Club Mécènes
Template: twentytwentyfive
Description: Thème enfant de Twenty Twenty-Five : ambiance métal sombre, rouge flamme, polices auto-hébergées (RGPD).
Version: 1.4.0
Requires at least: 6.7
Requires PHP: 7.4
Text Domain: hellsquad-hellfest
*/

/* En-tête : filet rouge */
.wp-site-blocks > header {
	border-bottom: 2px solid var(--wp--preset--color--accent-1);
}

/* Titres : légère lueur */
h1, .wp-block-site-title {
	text-shadow: 0 0 18px rgba(237, 32, 46, .45);
}

/* Navigation et titres secondaires en capitales */
.wp-block-navigation, h2, h3, h4 {
	text-transform: uppercase;
	letter-spacing: .04em;
}

/* Annuaire : champs et cartes */
.ca-filtres input,
.ca-filtres select {
	background: var(--wp--preset--color--accent-3);
	color: var(--wp--preset--color--contrast);
	border: 1px solid var(--wp--preset--color--accent-6);
	border-radius: 2px;
	padding: .55em .8em;
	min-width: 14em;
}
.ca-filtres button {
	background: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--contrast);
	border: 0;
	border-radius: 2px;
	padding: .55em 1.2em;
	text-transform: uppercase;
	letter-spacing: .06em;
	cursor: pointer;
}
.ca-filtres button:hover { background: var(--wp--preset--color--accent-2); }

.ca-grille .ca-carte {
	background: var(--wp--preset--color--accent-3);
	border: 1px solid var(--wp--preset--color--accent-6);
	border-radius: 2px;
	transition: border-color .2s, transform .2s;
}
.ca-grille .ca-carte:hover {
	border-color: var(--wp--preset--color--accent-1);
	transform: translateY(-2px);
}
.ca-grille .ca-carte a { text-decoration: none; }
.ca-grille .ca-carte h3 { margin-top: .6em; }

/* Logo placé devant le titre du site (en-tête et pied de page) */
.wp-block-site-title a {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	text-decoration: none;
}
.wp-block-site-title a::before {
	content: "";
	flex: none;
	width: 3.2rem;
	height: 2.5rem;
	background: url("assets/logo-icon.png") center / contain no-repeat;
}

/* Menu du club (shortcode [club_menu]) */
.club-menu ul {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem 1.8rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.club-menu a {
	font-family: var(--wp--preset--font-family--bebas-neue);
	font-size: 1.25rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none;
}
.club-menu a:hover { color: var(--wp--preset--color--accent-1); }

/* En-tête : logo complet en haut à gauche (le texte du titre reste lisible par les lecteurs d'écran) */
.wp-site-blocks > header .wp-block-site-title a {
	font-size: 0;
	line-height: 0;
}
.wp-site-blocks > header .wp-block-site-title a::before {
	width: 6.8rem;
	height: 5.5rem;
	background-image: url("assets/logo-hellsquad.png");
}
@media (max-width: 600px) {
	.wp-site-blocks > header .wp-block-site-title a::before {
		width: 5rem;
		height: 4.05rem;
	}
}

/* Actus */
.ca-lien-retour a {
	font-family: var(--wp--preset--font-family--bebas-neue);
	font-size: 1.1rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none;
	opacity: .8;
}
.ca-lien-retour a:hover { color: var(--wp--preset--color--accent-1); opacity: 1; }

.ca-actu-carte {
	height: 100%;
	padding: 1.2rem;
	background: var(--wp--preset--color--accent-3);
	border: 1px solid var(--wp--preset--color--accent-6);
	border-top: 3px solid var(--wp--preset--color--accent-1);
	border-radius: 2px;
}
.ca-actu-carte .wp-block-post-title { margin: .8rem 0 .3rem; }
.ca-actu-carte .wp-block-post-title a { text-decoration: none; }
.ca-actu-carte .wp-block-post-title a:hover { color: var(--wp--preset--color--accent-1); }
.ca-actu-auteur { font-family: var(--wp--preset--font-family--bebas-neue); letter-spacing: .06em; text-transform: uppercase; }
.ca-actu-auteur a { text-decoration: none; color: var(--wp--preset--color--accent-1); }
.wp-block-post-date { opacity: .7; }

/* Groupes de boutons (page d'accueil, contenus) : côte à côte, espacés, retour à la ligne propre.
   Règle du site : le premier bouton est l'action principale (plein), les suivants sont secondaires (contour). */
.wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8rem 1rem;
}
.wp-block-buttons > .wp-block-button {
	margin: 0;
}
.wp-block-buttons .wp-block-button__link {
	display: inline-block;
	padding: .7rem 1.6rem;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	border: 1px solid var(--wp--preset--color--accent-1);
	border-radius: 2px;
}
.wp-block-buttons > .wp-block-button:nth-child(n+2) .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--contrast);
}
.wp-block-buttons > .wp-block-button:nth-child(n+2) .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent-1);
}
@media (max-width: 600px) {
	.wp-block-buttons > .wp-block-button,
	.wp-block-buttons .wp-block-button__link {
		width: 100%;
	}
}

/* Actus en mode « liste » (choix du membre : classe ajoutée par le plugin sur la page des actus) */
.ca-vue-liste .wp-block-post-template.is-layout-grid {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
.ca-vue-liste .ca-actu-carte {
	display: flex;
	align-items: flex-start;
	gap: 1.4rem;
}
.ca-vue-liste .ca-actu-carte .wp-block-post-featured-image {
	flex: 0 0 220px;
	margin: 0;
}
.ca-vue-liste .ca-actu-texte {
	flex: 1;
	min-width: 0;
}
.ca-vue-liste .ca-actu-carte .wp-block-post-title {
	margin-top: 0;
}
@media (max-width: 600px) {
	.ca-vue-liste .ca-actu-carte { flex-direction: column; }
	.ca-vue-liste .ca-actu-carte .wp-block-post-featured-image { flex: none; width: 100%; }
}

/* Pages du club (Ma fiche, Mes mises en relation, Publier une actu) : titre à gauche, même largeur que l'annuaire */
.ca-page-titre {
	margin: 0 auto 1.5rem;
	font-family: var(--wp--preset--font-family--hellfont);
	font-weight: 400;
	font-size: clamp(2.4rem, 4vw, 3.4rem);
	line-height: 1;
	text-align: left;
}
.ca-page-titre + .entry-content > .ca-fiche { max-width: var(--wp--style--global--wide-size, 1340px); padding: 0; }
