/**
 * Habillage de la page « Nos Activités » — Betton & Dragons
 *
 * Sixième page de contenu, après « Adhérer », « Murder party », « Atelier
 * peinture », « Jeux de figurine » et « Jeux de rôles ». Même dispositif à la
 * lettre, mêmes valeurs : toutes viennent de CHARTE-GRAPHIQUE.md, aucune n'est
 * inventée.
 *
 * La page était rendue par Elementor : quatre conteneurs « icon box » sortis
 * sans habillage propre (icônes SVG à la taille brute, titres au fil du texte,
 * « + d'infos » en simple lien). Elle en est sortie par
 * `bin/sortir-page-elementor.py 842`, comme « Jeux de rôles » avant elle.
 *
 * Les textes du jeu de rôles et du jeu de figurines sont repris mot pour mot.
 * Ceux de la peinture de figurines et de la murder party ont été écrits ici :
 * le premier n'avait qu'une ligne, le second rien du tout. Ils ne disent que
 * ce que les pages « Atelier peinture » et « Murder party » disent déjà, sans
 * avancer un chiffre que l'association n'a pas confirmé.
 *
 * Sélecteurs préfixés `body.page` pour la même raison que sur les cinq
 * feuilles précédentes (voir CLAUDE.md) : à spécificité égale c'est le dernier
 * chargé qui gagne, et on ne veut pas dépendre de l'ordre d'enqueue d'OceanWP.
 * Ce qui touche un lien est en plus ancré sur `#content` : le thème défend les
 * liens de contenu en (0,6,1), aucune combinaison de classes ne passe devant.
 *
 * C'est la SIXIÈME feuille sur ce modèle. La fusion en un `bd-contenu.css`
 * commun n'est plus en retard, elle est franchement due.
 */

/* Déclarées sur le <body> aussi : `.page-header` n'est pas un descendant de
   `.bd-activites`, et une variable non héritée y rendrait la déclaration
   invalide au calcul. Voir le même commentaire dans bd-adherer.css. */
body.bd-page-activites,
.bd-activites {
	--bd-vert: #08403f;
	--bd-terracotta: #c0623e;
	--bd-noir: #282828;
	--bd-creme: #f6f7e9;
	--bd-filet: #ededed;
}

/* ---------------------------------------------------------------------------
 * 1. Bandes et colonne de lecture
 * La charte limite un texte suivi à ~860 px : au-delà la ligne devient
 * illisible. Les bandes, elles, filent d'un bord à l'autre du conteneur.
 * ------------------------------------------------------------------------ */

body.page .bd-activites {
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
	color: var(--bd-noir);
}

body.page .bd-activites__bande {
	padding: 56px 24px;
	/* Fond posé explicitement : depuis la remise à plat de la personnalisation
	   OceanWP, le fond du site est le crème #F6F7E9 de la charte. Une bande
	   transparente se confondrait avec la bande crème et l'alternance ne se
	   verrait pas. */
	background-color: #fff;
}

body.page .bd-activites__contenu {
	max-width: 860px;
	margin: 0 auto;
}

/* La grille des quatre activités n'est pas un texte suivi : à 860 px les
   cartes tiennent deux par deux, on laisse la bande respirer jusqu'à 1100 px
   pour qu'elles restent confortables. */
body.page .bd-activites__contenu--large {
	max-width: 1100px;
}

/* Alternance des fonds, section par section : blanc → crème → vert. Jamais
   deux fonds colorés côte à côte (charte, §1).

   LA BANDE CRÈME NE POSE PAS DE FOND, et c'est délibéré. Le fond du site est
   lui-même #F6F7E9 depuis la remise à plat d'OceanWP : une bande crème a donc
   exactement la couleur de ses marges et du fond de page. Le correctif tenté
   sur « Jeux de rôles » — deux filets #EDEDED en haut et en bas — a été mesuré
   à la recette du 2026-08-28 et NE MARCHE PAS : #EDEDED sur #F6F7E9 vaut
   1,08:1 de contraste, le filet est invisible, et il ne court de toute façon
   pas sur les côtés (les bandes font 1152 px, pas la largeur de l'écran).
   Échantillonnage de pixels à hauteur de bande, de x=30 à x=1250 : aucune
   rupture, du crème d'un bout à l'autre.

   On assume donc ce qui est réellement perçu : la zone des cartes est le fond
   de page, bornée en haut par la bande blanche et en bas par la bande verte,
   toutes deux à bords francs. Les cartes blanches donnent la texture. Passer
   les bandes en pleine largeur (`calc(-50vw + 50%)`) aurait été l'autre voie,
   écartée ici : avec une barre de défilement, 100vw dépasse la zone visible et
   crée un débordement horizontal — la page n'en a aucun aujourd'hui (mesuré :
   scrollWidth == clientWidth à 390 comme à 1280 px), on ne le remet pas en jeu
   pour une bande. */
body.page .bd-activites__bande--creme {
	background-color: transparent;
}

body.page .bd-activites__bande--vert {
	background-color: var(--bd-vert);
	color: #fff;
}

body.page .bd-activites p {
	margin: 0 0 18px;
}

body.page .bd-activites p:last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------------------------
 * 1 bis. En-tête de page
 *
 * C'est elle qui porte le H1 (« Nos Activités ») : le contenu n'en pose pas un
 * second, et les quatre activités y sont donc des H2. Depuis la remise à la
 * charte de la personnalisation OceanWP, le thème sort déjà un fond vert
 * profond et un titre blanc à 40 px — ces règles ne font que le tenir
 * indépendamment du réglage, comme sur les cinq autres pages de contenu.
 * ------------------------------------------------------------------------ */

body.bd-page-activites .page-header {
	background-color: #08403f;
}

body.bd-page-activites .page-header .page-header-title {
	font-family: "Oswald", sans-serif;
	font-size: 40px;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: #fff;
}

/* Le fil d'Ariane est une aide à la navigation, pas un titre : mention
   secondaire (charte, §2), en blanc atténué sur le fond vert. */
body.bd-page-activites .page-header .site-breadcrumbs {
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	color: rgba(255, 255, 255, .75);
}

body.bd-page-activites .page-header .site-breadcrumbs a {
	color: #fff;
}

body.bd-page-activites .page-header .site-breadcrumbs a:hover {
	color: #c0623e;
}

/* ---------------------------------------------------------------------------
 * 2. Typographie — Oswald en majuscules espacées, la signature du site
 * ------------------------------------------------------------------------ */

body.page .bd-activites h2,
body.page .bd-activites h3 {
	font-family: "Oswald", sans-serif;
	text-transform: uppercase;
	margin: 0 0 18px;
}

body.page .bd-activites h2 {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 1px;
	color: var(--bd-vert);
}

body.page .bd-activites h3 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 1px;
	color: var(--bd-terracotta);
}

/* Sur fond vert, les titres passent en blanc (charte, règles de combinaison). */
body.page .bd-activites__bande--vert h2,
body.page .bd-activites__bande--vert h3 {
	color: #fff;
}

body.page .bd-activites__chapeau {
	font-size: 18px;
	line-height: 1.65;
}

/* Sur-titre de la charte : Roboto 700, 14 px, majuscules espacées. La charte
   le veut terracotta — mais #C0623E sur blanc vaut 4,15:1 (mesuré le
   2026-08-28), et à 14 px en gras le seuil AA reste 4,5:1 : « grand texte »
   commence à 18,66 px en gras. Il passe donc au vert profond #08403F, l'autre
   couleur d'identité de la charte, à 11,57:1. Aucune teinte inventée : on
   choisit entre deux valeurs de la charte celle qui est lisible.

   Le défaut est LATENT DANS LES CINQ AUTRES FEUILLES de page de contenu, qui
   posent toutes le sur-titre en terracotta sur fond blanc. Non corrigé chez
   elles ici pour ne pas remettre en jeu des pages déjà recettées — à reprendre
   au moment de la fusion en `bd-contenu.css`.

   Sur fond vert le terracotta tombait déjà à 2,79:1 (mesuré le 2026-08-27 sur
   « Atelier peinture ») : la règle de repli le passe en blanc, on la garde. */
body.page .bd-activites__surtitre {
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--bd-vert);
	margin-bottom: 14px;
}

body.page .bd-activites__bande--vert .bd-activites__surtitre {
	color: #fff;
}

/* ---------------------------------------------------------------------------
 * 3. Les quatre activités — cartes blanches, rayon 15 px, ombre très douce
 *    (charte, §4)
 *
 * C'étaient quatre conteneurs Elementor empilés, dont deux quasi vides. Une
 * grille `auto-fit` les met sur une ou deux colonnes selon la place, et
 * `align-items: stretch` (défaut) leur donne la même hauteur. Le bouton est
 * poussé en bas de carte par `margin-top: auto` pour que les quatre appels à
 * l'action s'alignent malgré des textes de longueurs très inégales.
 * ------------------------------------------------------------------------ */

/* DEUX colonnes, pas `auto-fit`. Mesuré à la recette du 2026-08-28 : à
   1280 px, `repeat(auto-fit, minmax(300px, 1fr))` sortait TROIS colonnes de
   350 px et laissait « La murder party » seule sur la deuxième rangée, avec
   750 px de vide à sa droite. Les activités sont quatre et le resteront : une
   grille 2 x 2 est la seule qui se ferme. */
body.page .bd-activites__cartes {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.page .bd-activites__carte {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	border: 1px solid var(--bd-filet);
	border-radius: 15px;
	padding: 32px 28px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .07);
	margin: 0;
}

body.page .bd-activites__carte h2 {
	margin-bottom: 16px;
}

body.page .bd-activites__carte p {
	font-size: 15px;
}

/* ---------------------------------------------------------------------------
 * 3 bis. Les pictogrammes
 *
 * Les quatre dessins sont ceux d'origine (dé, joueurs, pinceau, suspect
 * masqué), bornés à 40 px et posés au terracotta, couleur des accents de la
 * charte — un fond vert les bascule en blanc d'une seule règle.
 *
 * Ils sont posés en `mask-image` et NON en SVG dans le contenu de la page.
 * Motif : les `<svg>` inline vivaient dans `post_content`, et toute réédition
 * de la page dans l'éditeur WordPress les faisait sauter en silence (constaté
 * le 2026-09-10 : les quatre `div.bd-activites__picto` étaient restés, vides).
 * Le dessin est donc sorti du contenu éditable et vit ici, versionné. Le
 * contenu ne porte plus qu'une classe modificatrice par carte.
 *
 * `mask` et non `background-image` : le masque ne garde que l'alpha du dessin,
 * la couleur vient de `background-color` et reste donc pilotable par une seule
 * déclaration, comme le faisait `fill: currentColor`.
 *
 * Le préfixe `-webkit-` est conservé : Safari ne sert `mask-*` sans préfixe
 * qu'à partir de la 15.4.
 * ------------------------------------------------------------------------ */

body.page .bd-activites__picto {
	width: 40px;
	height: 40px;
	margin-bottom: 20px;
	background-color: var(--bd-terracotta);
	-webkit-mask-image: var(--bd-activites-picto);
	mask-image: var(--bd-activites-picto);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

body.page .bd-activites__bande--vert .bd-activites__picto {
	background-color: #fff;
}

/* Un dessin par carte, en variable : la mise en forme ci-dessus reste unique. */

body.page .bd-activites__picto--roles {
	--bd-activites-picto: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20480%20512%22%3E%3Cpath%20d=%22M106.75%20215.06L1.2%20370.95c-3.08%205%20.1%2011.5%205.93%2012.14l208.26%2022.07-108.64-190.1zM7.41%20315.43L82.7%20193.08%206.06%20147.1c-2.67-1.6-6.06.32-6.06%203.43v162.81c0%204.03%205.29%205.53%207.41%202.09zM18.25%20423.6l194.4%2087.66c5.3%202.45%2011.35-1.43%2011.35-7.26v-65.67l-203.55-22.3c-4.45-.5-6.23%205.59-2.2%207.57zm81.22-257.78L179.4%2022.88c4.34-7.06-3.59-15.25-10.78-11.14L17.81%20110.35c-2.47%201.62-2.39%205.26.13%206.78l81.53%2048.69zM240%20176h109.21L253.63%207.62C250.5%202.54%20245.25%200%20240%200s-10.5%202.54-13.63%207.62L130.79%20176H240zm233.94-28.9l-76.64%2045.99%2075.29%20122.35c2.11%203.44%207.41%201.94%207.41-2.1V150.53c0-3.11-3.39-5.03-6.06-3.43zm-93.41%2018.72l81.53-48.7c2.53-1.52%202.6-5.16.13-6.78l-150.81-98.6c-7.19-4.11-15.12%204.08-10.78%2011.14l79.93%20142.94zm79.02%20250.21L256%20438.32v65.67c0%205.84%206.05%209.71%2011.35%207.26l194.4-87.66c4.03-1.97%202.25-8.06-2.2-7.56zm-86.3-200.97l-108.63%20190.1%20208.26-22.07c5.83-.65%209.01-7.14%205.93-12.14L373.25%20215.06zM240%20208H139.57L240%20383.75%20340.43%20208H240z%22/%3E%3C/svg%3E");
}

body.page .bd-activites__picto--figurines {
	--bd-activites-picto: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20640%20512%22%3E%3Cpath%20d=%22M192%20256c61.9%200%20112-50.1%20112-112S253.9%2032%20192%2032%2080%2082.1%2080%20144s50.1%20112%20112%20112zm76.8%2032h-8.3c-20.8%2010-43.9%2016-68.5%2016s-47.6-6-68.5-16h-8.3C51.6%20288%200%20339.6%200%20403.2V432c0%2026.5%2021.5%2048%2048%2048h288c26.5%200%2048-21.5%2048-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zM480%20256c53%200%2096-43%2096-96s-43-96-96-96-96%2043-96%2096%2043%2096%2096%2096zm48%2032h-3.8c-13.9%204.8-28.6%208-44.2%208s-30.3-3.2-44.2-8H432c-20.4%200-39.2%205.9-55.7%2015.4%2024.4%2026.3%2039.7%2061.2%2039.7%2099.8v38.4c0%202.2-.5%204.3-.6%206.4H592c26.5%200%2048-21.5%2048-48%200-61.9-50.1-112-112-112z%22/%3E%3C/svg%3E");
}

body.page .bd-activites__picto--peinture {
	--bd-activites-picto: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20512%20512%22%3E%3Cpath%20d=%22M167.02%20309.34c-40.12%202.58-76.53%2017.86-97.19%2072.3-2.35%206.21-8%209.98-14.59%209.98-11.11%200-45.46-27.67-55.25-34.35C0%20439.62%2037.93%20512%20128%20512c75.86%200%20128-43.77%20128-120.19%200-3.11-.65-6.08-.97-9.13l-88.01-73.34zM457.89%200c-15.16%200-29.37%206.71-40.21%2016.45C213.27%20199.05%20192%20203.34%20192%20257.09c0%2013.7%203.25%2026.76%208.73%2038.7l63.82%2053.18c7.21%201.8%2014.64%203.03%2022.39%203.03%2062.11%200%2098.11-45.47%20211.16-256.46%207.38-14.35%2013.9-29.85%2013.9-45.99C512%2020.64%20486%200%20457.89%200z%22/%3E%3C/svg%3E");
}

body.page .bd-activites__picto--murder {
	--bd-activites-picto: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20496%20512%22%3E%3Cpath%20d=%22M248%208C111%208%200%20119%200%20256s111%20248%20248%20248%20248-111%20248-248S385%208%20248%208zm0%20448c-110.3%200-200-89.7-200-200S137.7%2056%20248%2056s200%2089.7%20200%20200-89.7%20200-200%20200zm-33.8-217.9c7.8-7.8%207.8-20.5%200-28.3L196.3%20192l17.9-17.9c7.8-7.8%207.8-20.5%200-28.3-7.8-7.8-20.5-7.8-28.3%200L168%20163.7l-17.8-17.8c-7.8-7.8-20.5-7.8-28.3%200-7.8%207.8-7.8%2020.5%200%2028.3l17.9%2017.9-17.9%2017.9c-7.8%207.8-7.8%2020.5%200%2028.3%207.8%207.8%2020.5%207.8%2028.3%200l17.8-17.8%2017.8%2017.8c7.9%207.7%2020.5%207.7%2028.4-.2zm160-92.2c-7.8-7.8-20.5-7.8-28.3%200L328%20163.7l-17.8-17.8c-7.8-7.8-20.5-7.8-28.3%200-7.8%207.8-7.8%2020.5%200%2028.3l17.9%2017.9-17.9%2017.9c-7.8%207.8-7.8%2020.5%200%2028.3%207.8%207.8%2020.5%207.8%2028.3%200l17.8-17.8%2017.8%2017.8c7.8%207.8%2020.5%207.8%2028.3%200%207.8-7.8%207.8-20.5%200-28.3l-17.8-18%2017.9-17.9c7.7-7.8%207.7-20.4%200-28.2zM248%20272c-35.3%200-64%2028.7-64%2064s28.7%2064%2064%2064%2064-28.7%2064-64-28.7-64-64-64z%22/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------------
 * 4. Boutons — reproduction à l'identique de celui de la home (charte, §3)
 *
 * Le survol INVERSE le bouton (fond blanc, texte vert profond), il ne
 * l'assombrit pas. Ancré sur `#content` : sans cela, le lien de contenu
 * d'OceanWP (0,6,1) reprendrait la main sur la couleur du libellé.
 * ------------------------------------------------------------------------ */

body.page .bd-activites__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 24px;
}

/* Dans une carte, le bloc d'actions est poussé en pied : les quatre boutons
   s'alignent alors sur une même ligne d'une carte à l'autre. */
body.page .bd-activites__carte .bd-activites__actions {
	margin-top: auto;
	padding-top: 8px;
}

body.page #content .bd-activites__bouton {
	display: inline-block;
	background-color: var(--bd-terracotta);
	color: #fff;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 12px 40px;
	border-radius: 15px;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}

body.page #content .bd-activites__bouton:hover,
body.page #content .bd-activites__bouton:focus {
	background-color: #fff;
	color: var(--bd-vert);
}

/* Variante en ligne, pour un second appel à l'action de moindre poids : sur le
   fond vert, contour blanc qui se remplit au survol. Reprise de bd-peinture. */
body.page #content .bd-activites__bouton--ligne {
	background-color: transparent;
	color: #fff;
	box-shadow: inset 0 0 0 2px #fff;
}

body.page #content .bd-activites__bouton--ligne:hover,
body.page #content .bd-activites__bouton--ligne:focus {
	background-color: #fff;
	color: var(--bd-vert);
}

/* ---------------------------------------------------------------------------
 * 5. Liens de texte courant — terracotta, comme partout ailleurs
 *
 * Sans l'ancrage sur #content, le lien de contenu d'OceanWP l'emporterait
 * (0,6,1). Le `:not()` exclut les boutons : posés dans un `<p>` ou un `<li>`,
 * ils prendraient sinon la couleur des liens de contenu — libellé terracotta
 * sur fond terracotta (voir CLAUDE.md).
 * ------------------------------------------------------------------------ */

body.page #content .bd-activites p a:not(.bd-activites__bouton),
body.page #content .bd-activites li a:not(.bd-activites__bouton) {
	color: var(--bd-terracotta);
}

body.page #content .bd-activites p a:not(.bd-activites__bouton):hover,
body.page #content .bd-activites li a:not(.bd-activites__bouton):hover {
	color: var(--bd-vert);
}

/* Sur le fond vert, le terracotta tombe sous le seuil de contraste : les liens
   y passent en blanc, soulignés pour rester distinguables du texte courant. */
body.page #content .bd-activites__bande--vert p a:not(.bd-activites__bouton),
body.page #content .bd-activites__bande--vert li a:not(.bd-activites__bouton) {
	color: #fff;
	text-decoration: underline;
}

/* ---------------------------------------------------------------------------
 * 6. Mobile — H1 à 28 px (charte, échelle de page intérieure)
 * ------------------------------------------------------------------------ */

@media (max-width: 767px) {
	body.bd-page-activites .page-header .page-header-title {
		font-size: 28px;
	}

	body.page .bd-activites__bande {
		padding: 40px 18px;
	}

	/* Une colonne : c'est `auto-fit` qui s'en chargeait avant le passage à
	   deux colonnes fixes. */
	body.page .bd-activites__cartes {
		grid-template-columns: 1fr;
	}

	body.page .bd-activites__carte {
		padding: 28px 22px;
	}

	/* Le bouton prend toute la largeur de la carte : à 40 px de rembourrage
	   horizontal, un libellé court laissait une cible flottante au milieu. */
	body.page #content .bd-activites__bouton {
		width: 100%;
		text-align: center;
		padding: 12px 20px;
	}
}
