/*
Theme Name: SLDB Badminton
Theme URI: https://sldbad.fr
Description: Thème enfant de Twenty Twenty-Five pour le SLD Badminton (Dommartin). Palette bordeaux, noir et blanc cassé, compositions prêtes à l'emploi. Allez Martin !
Author: SLD Badminton
Template: twentytwentyfive
Version: 1.0.8
Requires at least: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sldb-badminton
*/

/* ==========================================================
   1. Bases
   ========================================================== */
:root {
	--sldb-bordeaux: var(--wp--preset--color--bordeaux, #7A1837);
	--sldb-bordeaux-clair: var(--wp--preset--color--bordeaux-clair, #E59AB0);
	--sldb-noir: var(--wp--preset--color--noir, #161616);
	--sldb-creme: var(--wp--preset--color--creme, #FAF6F3);
	--sldb-blanc: #FFFFFF;
	--sldb-sable: var(--wp--preset--color--sable, #F1EAE5);
	--sldb-gris: var(--wp--preset--color--gris, #5C524D);
	--sldb-ombre: 0 12px 30px rgba(22, 22, 22, 0.14);
	--sldb-scotch: rgba(190, 160, 130, 0.45);
	--sldb-vague-h: clamp(40px, 6vw, 80px);
}

body { overflow-x: hidden; }

/* La zone de contenu du modèle « Page SLDB » colle à l'en-tête et au pied de page */
.sldb-main { margin-block-start: 0 !important; }
.sldb-main > .wp-block-post-content > .alignfull:first-child { margin-block-start: 0; }
.sldb-main > .wp-block-post-content > .alignfull { margin-block-start: 0; margin-block-end: 0; }

/* ==========================================================
   2. Sections
   ========================================================== */
.sldb-section {
	position: relative;
	padding: clamp(56px, 8vw, 96px) 24px;
}
.sldb-section.sldb-creme { background: var(--sldb-creme); color: var(--sldb-noir); }
.sldb-section.sldb-blanc { background: var(--sldb-blanc); color: var(--sldb-noir); }
.sldb-section.sldb-noir { background: var(--sldb-noir); color: var(--sldb-blanc); overflow: hidden; }
.sldb-noir .wp-block-heading,
.sldb-noir p { color: var(--sldb-blanc); }
.sldb-noir p.sldb-texte-doux { color: #EDEAE8; }

/* Vagues en bas de section : la couleur est celle de la section suivante */
.sldb-vague-creme,
.sldb-vague-blanc,
.sldb-vague-noir { padding-bottom: calc(clamp(56px, 8vw, 96px) + var(--sldb-vague-h)); }
.sldb-vague-creme::after,
.sldb-vague-blanc::after,
.sldb-vague-noir::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: -1px;
	height: var(--sldb-vague-h);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0 55 C 220 100 430 10 720 45 C 1010 80 1220 15 1440 50 L1440 100 L0 100 Z'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0 55 C 220 100 430 10 720 45 C 1010 80 1220 15 1440 50 L1440 100 L0 100 Z'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
	pointer-events: none;
	z-index: 1;
}
.sldb-vague-creme::after { background: var(--sldb-creme); }
.sldb-vague-blanc::after { background: var(--sldb-blanc); }
.sldb-vague-noir::after { background: var(--sldb-noir); }

/* Bandes diagonales façon maillot (sur les sections noires) */
.sldb-diagonales::before {
	content: "";
	display: block;
	position: absolute;
	right: -220px; top: -60px;
	width: min(1100px, 90vw); height: 140px;
	background: var(--sldb-bordeaux);
	border-radius: 150px;
	transform: rotate(-22deg);
	opacity: 0.95;
	pointer-events: none;
}
.sldb-diagonales > * { position: relative; z-index: 2; }

/* ==========================================================
   3. Textes
   ========================================================== */
.sldb-kicker {
	font-family: var(--wp--preset--font-family--manuscrit);
	font-weight: 700;
	font-size: clamp(1.5rem, 2.4vw, 1.875rem);
	line-height: 1.1;
	color: var(--sldb-bordeaux);
	transform: rotate(-2deg);
	display: inline-block;
	margin-bottom: 0.25rem;
}
.sldb-noir .sldb-kicker { color: var(--sldb-bordeaux-clair); }
.sldb-manuscrit {
	font-family: var(--wp--preset--font-family--manuscrit);
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.15;
}
.sldb-texte-doux { color: var(--sldb-gris); }
.sldb-chapo { font-size: clamp(1.125rem, 1.6vw, 1.3rem); max-width: 560px; }
.sldb-centre { text-align: center; margin-left: auto; margin-right: auto; }
.sldb-titre-geant { font-size: clamp(3.25rem, 9vw, 6.5rem) !important; line-height: 0.92 !important; }
.sldb-prix {
	font-family: var(--wp--preset--font-family--titres);
	font-weight: 800;
	font-size: 3.5rem;
	line-height: 1;
	margin: 0;
}

/* ==========================================================
   4. Cartes, pastilles, inclinaisons
   ========================================================== */
.sldb-carte {
	background: var(--sldb-blanc);
	color: var(--sldb-noir);
	border-radius: 36px;
	padding: 30px !important;
}
.sldb-carte-noire {
	background: var(--sldb-noir);
	color: var(--sldb-blanc);
	border-radius: 36px;
	padding: 30px !important;
}
.sldb-carte-noire p,
.sldb-carte-noire .wp-block-heading { color: var(--sldb-blanc); }
.sldb-carte-bordeaux {
	background: var(--sldb-bordeaux);
	color: var(--sldb-blanc);
	border-radius: 36px;
	padding: 30px !important;
}
.sldb-carte-bordeaux p,
.sldb-carte-bordeaux .wp-block-heading { color: var(--sldb-blanc); }
.sldb-carte-translucide {
	background: rgba(255, 255, 255, 0.07);
	border-radius: 32px;
	padding: 28px !important;
}
.sldb-bulle {
	background: var(--sldb-blanc);
	border-radius: 32px 32px 32px 8px;
	padding: 24px 28px !important;
}
.sldb-bandeau-arrondi {
	background: var(--sldb-blanc);
	border-radius: 48px 48px 48px 12px;
	padding: clamp(28px, 4vw, 48px) !important;
}

.sldb-pastille {
	display: inline-block;
	background: var(--sldb-blanc);
	border-radius: 999px;
	padding: 8px 16px;
	font-weight: 500;
	margin-left: 0;
	margin-right: 0;
}
.sldb-creneau {
	background: var(--sldb-creme);
	border-radius: 999px;
	padding: 12px 18px;
	font-weight: 700;
	margin: 0;
}
.sldb-carte-noire .sldb-creneau { background: rgba(255, 255, 255, 0.12); color: var(--sldb-blanc); font-weight: 400; }

@media (min-width: 782px) {
	.sldb-incline-g { transform: rotate(-2deg); }
	.sldb-incline-d { transform: rotate(2deg); }
	.sldb-decale { transform: rotate(1.5deg) translateY(24px); }
	.sldb-decale-g { transform: rotate(-2deg) translateY(24px); }
}

/* ==========================================================
   5. Photos
   ========================================================== */
/* Style d'image « Polaroïd » */
.wp-block-image.is-style-polaroid {
	position: relative;
	background: var(--sldb-blanc);
	padding: 12px 12px 56px;
	box-shadow: var(--sldb-ombre);
	margin: 0;
}
.wp-block-image.is-style-polaroid img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
}
.wp-block-image.is-style-polaroid::before {
	content: "";
	position: absolute;
	top: -12px; left: 40%;
	width: 84px; height: 24px;
	background: var(--sldb-scotch);
	transform: rotate(-4deg);
	z-index: 2;
}
.wp-block-image.is-style-polaroid figcaption {
	position: absolute;
	left: 16px; right: 16px; bottom: 10px;
	margin: 0;
	text-align: left;
	color: var(--sldb-noir);
	font-family: var(--wp--preset--font-family--manuscrit);
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.1;
}

/* Grille de polaroïds : inclinaisons alternées */
.sldb-polaroids { gap: 40px 28px !important; }
@media (min-width: 782px) {
	.sldb-polaroids > *:nth-child(4n+1) { transform: rotate(-3deg); }
	.sldb-polaroids > *:nth-child(4n+2) { transform: rotate(2deg) translateY(24px); }
	.sldb-polaroids > *:nth-child(4n+3) { transform: rotate(-1.5deg); }
	.sldb-polaroids > *:nth-child(4n+4) { transform: rotate(3deg) translateY(24px); }
}

/* Collage de l'accueil (3 polaroïds superposés) */
.sldb-collage { position: relative; }
@media (min-width: 900px) {
	.sldb-collage { min-height: 600px; }
	.sldb-collage > .wp-block-image { position: absolute !important; margin: 0 !important; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35); }
	.sldb-collage > .wp-block-image:nth-child(1) { left: 2%; top: 0; width: 55%; transform: rotate(-6deg); z-index: 1; }
	.sldb-collage > .wp-block-image:nth-child(2) { right: 0; top: 110px; width: 48%; transform: rotate(5deg); z-index: 2; }
	.sldb-collage > .wp-block-image:nth-child(3) { left: 6%; top: 330px; width: 44%; transform: rotate(3deg); z-index: 3; }
}

/* Style d'image « Photo ronde » (bureau) */
.wp-block-image.is-style-rond img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: 5px solid var(--sldb-blanc);
	box-shadow: 0 10px 26px rgba(22, 22, 22, 0.16);
}
.sldb-membre { text-align: center; }
.sldb-membre .wp-block-image { margin: 0 auto; max-width: 190px; }
.sldb-membre .sldb-nom {
	display: inline-block;
	margin-top: -18px !important;
	position: relative;
	background: var(--sldb-noir);
	color: var(--sldb-blanc);
	padding: 6px 18px;
	border-radius: 999px;
	font-family: var(--wp--preset--font-family--titres);
	font-weight: 700;
	font-size: 1.25rem;
	transform: rotate(-3deg);
}
.sldb-membre .sldb-role { margin-top: 4px !important; }

/* Le maillot, posé sur une forme organique */
.sldb-maillot { position: relative; }
.sldb-maillot::before {
	content: "";
	position: absolute;
	inset: 8% 6%;
	background: var(--sldb-sable);
	border-radius: 48% 52% 45% 55% / 55% 45% 55% 45%;
}
.sldb-maillot img { position: relative; transform: rotate(-5deg); }

/* ==========================================================
   6. Boutons
   ========================================================== */
.wp-block-button.sldb-bouton-blanc .wp-block-button__link { background: var(--sldb-blanc); color: var(--sldb-noir); }
.wp-block-button.sldb-bouton-noir .wp-block-button__link { background: var(--sldb-noir); color: var(--sldb-blanc); }
.wp-block-button.is-style-outline .wp-block-button__link { border: 2px solid currentColor; background: transparent; color: var(--sldb-noir); }
.sldb-noir .wp-block-button.is-style-outline .wp-block-button__link { color: var(--sldb-blanc); }
.wp-block-button.sldb-bouton-blanc .wp-block-button__link:hover { background: var(--sldb-creme); color: var(--sldb-noir); }

/* ==========================================================
   7. Actus (boucle de requête)
   ========================================================== */
.sldb-actus .wp-block-post {
	background: var(--sldb-blanc);
	border-radius: 36px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.sldb-actus .wp-block-post-featured-image { margin: 0; }
.sldb-actus .wp-block-post-featured-image img { aspect-ratio: 3 / 2; object-fit: cover; width: 100%; }
.sldb-actus .wp-block-post-title,
.sldb-actus .wp-block-post-excerpt,
.sldb-actus .wp-block-post-date { padding: 0 28px; }
.sldb-actus .wp-block-post-title { font-family: var(--wp--preset--font-family--texte); font-size: 1.25rem; font-weight: 700; letter-spacing: 0; line-height: 1.3; margin-top: 20px; }
.sldb-actus .wp-block-post-title a { color: var(--sldb-noir); text-decoration: none; }
.sldb-actus .wp-block-post-excerpt { color: var(--sldb-gris); padding-bottom: 28px; }
.sldb-actus .wp-block-post-date { color: var(--sldb-gris); font-size: 0.9rem; margin-top: 16px; }

/* ==========================================================
   8. En-tête et pied de page
   ========================================================== */
.sldb-header {
	background: var(--sldb-blanc);
	border-bottom: 1px solid #EDE4DE;
	padding: 14px 24px;
}
.sldb-header .wp-block-site-logo img { height: 68px; width: auto; max-width: none; }
.sldb-header .sldb-allez {
	font-family: var(--wp--preset--font-family--manuscrit);
	font-weight: 700;
	font-size: 1.5rem;
	color: var(--sldb-noir);
	transform: rotate(-4deg);
	margin: 0;
}
.sldb-header .wp-block-navigation {
	font-weight: 500;
	gap: 6px;
}
@media (min-width: 900px) {
	.sldb-header .wp-block-navigation__container {
		background: var(--sldb-creme);
		padding: 6px;
		border-radius: 999px;
		gap: 4px;
	}
	.sldb-header .wp-block-navigation-item__content { padding: 10px 16px !important; border-radius: 999px; }
	.sldb-header .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
	.sldb-header .wp-block-navigation-item__content:hover { background: var(--sldb-blanc); }
}
.sldb-header .wp-block-button__link { padding: 10px 20px; }

.sldb-footer {
	background: var(--sldb-noir);
	color: var(--sldb-blanc);
	padding: clamp(40px, 6vw, 72px) 24px 32px;
	position: relative;
}
.sldb-footer::before {
	content: "";
	position: absolute;
	left: 0; right: 0; top: calc(-1 * var(--sldb-vague-h) + 1px);
	height: var(--sldb-vague-h);
	background: var(--sldb-noir);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0 55 C 220 100 430 10 720 45 C 1010 80 1220 15 1440 50 L1440 100 L0 100 Z'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0 55 C 220 100 430 10 720 45 C 1010 80 1220 15 1440 50 L1440 100 L0 100 Z'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
.sldb-footer p,
.sldb-footer .wp-block-heading { color: var(--sldb-blanc); }
.sldb-footer a { color: var(--sldb-blanc); }
.sldb-footer .sldb-texte-doux { color: #CFC9C6; }
.sldb-footer .sldb-kicker { color: var(--sldb-bordeaux-clair); }
.sldb-footer .sldb-mentions {
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	padding-top: 20px;
	margin-top: 40px;
	font-size: 0.875rem;
}
.sldb-footer .sldb-ffbad img {
	background: var(--sldb-blanc);
	border-radius: 14px;
	padding: 6px 10px;
	height: 56px;
	width: auto;
}

/* ==========================================================
   9. Formulaires (Contact Form 7, WPForms…)
   ========================================================== */
.sldb-formulaire input[type="text"],
.sldb-formulaire input[type="email"],
.sldb-formulaire input[type="tel"],
.sldb-formulaire select,
.sldb-formulaire textarea {
	width: 100%;
	box-sizing: border-box;
	border: 2px solid #EDE4DE;
	background: var(--sldb-creme);
	border-radius: 18px;
	padding: 14px 16px;
	font: inherit;
	color: var(--sldb-noir);
}
.sldb-formulaire input[type="submit"],
.sldb-formulaire button[type="submit"] {
	background: var(--sldb-bordeaux);
	color: var(--sldb-blanc);
	border: 0;
	border-radius: 999px;
	padding: 14px 28px;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

/* ==========================================================
   10. Accessibilité et petits écrans
   ========================================================== */
@media (max-width: 781px) {
	.sldb-titre-geant { font-size: 3.25rem !important; }
	.sldb-diagonales::before { right: -320px; height: 100px; }
}
@media (prefers-reduced-motion: reduce) {
	* { scroll-behavior: auto !important; }
}

/* ==========================================================
   11. Petits éléments des compositions
   ========================================================== */
.sldb-kicker.sldb-centre { display: block; text-align: center; transform: none; }
.sldb-noir p.sldb-pastille { color: var(--sldb-noir); }
.sldb-pastille-sable { background: var(--sldb-sable); }
.sldb-carte-sable { background: var(--sldb-sable) !important; min-height: 320px; display: flex; align-items: center; justify-content: center; text-align: center; }
.sldb-date {
	font-family: var(--wp--preset--font-family--titres);
	font-weight: 800;
	font-size: 2.5rem;
	line-height: 1;
	color: var(--sldb-bordeaux-clair);
	margin: 0;
}
.sldb-carte-bordeaux .sldb-date,
.sldb-carte-bordeaux a { color: var(--sldb-blanc); }
.sldb-numero {
	width: 56px; height: 56px;
	border-radius: 50%;
	background: var(--sldb-noir);
	color: var(--sldb-blanc);
	display: flex; align-items: center; justify-content: center;
	font-family: var(--wp--preset--font-family--titres);
	font-weight: 800;
	font-size: 1.75rem;
	margin: 0;
}
.sldb-signature { color: var(--sldb-bordeaux); margin-top: 0.5rem; }
.sldb-sous-titre { margin-top: -0.75rem !important; }
.sldb-lien-fort a { font-weight: 700; }
.sldb-petit { font-size: 0.875rem; font-weight: 700; margin: 0; }
.sldb-gros { font-family: var(--wp--preset--font-family--titres); font-weight: 700; font-size: 1.6rem; margin: 0; }
.sldb-carte-noire .sldb-gros a { color: var(--sldb-blanc); }
.sldb-carte .sldb-gros a { color: var(--sldb-noir); }
.sldb-liens { gap: 6px !important; }
.sldb-liens p { margin: 0; }
.sldb-entete h1 { max-width: 800px; }
.sldb-polaroids .wp-block-image,
.sldb-collage .wp-block-image { margin: 0; }


/* ==========================================================
   12. Correctifs 1.0.1
   ========================================================== */
/* Grilles : les cartes occupent toute la largeur disponible (pas de colonne vide) */
.sldb-section .wp-block-group.is-layout-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr));
}
/* Cartes : le bouton se cale en bas, textes lisibles sur fond noir */
.sldb-carte > .wp-block-buttons:last-child,
.sldb-carte-noire > .wp-block-buttons:last-child { margin-top: auto; }
.sldb-carte-noire .sldb-texte-doux,
.sldb-carte-noire .sldb-texte-doux li { color: #CFC9C6; }
/* Deux sections blanches qui se suivent : pas de double espace, bandeau visible */
.sldb-section.sldb-blanc + .sldb-section.sldb-blanc { padding-top: 0; }
.sldb-blanc .sldb-bandeau-arrondi { background: var(--sldb-sable); }
.sldb-creme .sldb-bandeau-arrondi { background: var(--sldb-blanc); }
/* Maillot : taille maîtrisée, le fond blanc de la photo se fond dans la forme */
.wp-block-image.sldb-maillot { max-width: 440px; margin-left: auto; margin-right: auto; }
.sldb-maillot img { mix-blend-mode: multiply; }

/* ==========================================================
   13. Correctifs 1.0.2
   ========================================================== */
/* L'en-tête (et son menu déroulant) passe au-dessus du contenu */
.sldb-header,
header.wp-block-template-part {
	position: relative;
	z-index: 100;
}
.sldb-header .wp-block-navigation__submenu-container {
	z-index: 101;
	border-radius: 18px;
	border: 1px solid #EDE4DE !important;
	padding: 6px !important;
	box-shadow: var(--sldb-ombre);
}

/* ==========================================================
   14. Actus : article à la une (1.0.3)
   ========================================================== */
.sldb-une { margin-bottom: 48px; }
.sldb-une .wp-block-post {
	background: var(--sldb-blanc);
	border-radius: 48px;
	overflow: hidden;
}
.sldb-une .wp-block-columns { gap: 0; margin: 0; }
.sldb-une .wp-block-column:first-child { flex-basis: 55%; }
.sldb-une .wp-block-post-featured-image { margin: 0; height: 100%; }
.sldb-une .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.sldb-une .wp-block-column:last-child { padding: clamp(28px, 4vw, 48px); }
.sldb-une .wp-block-post-title { font-size: clamp(1.75rem, 3vw, 2.5rem); }
.sldb-une .wp-block-post-title a { color: var(--sldb-noir); text-decoration: none; }
.sldb-une .wp-block-post-excerpt { color: var(--sldb-gris); font-size: 1.125rem; }
.sldb-une .wp-block-post-excerpt__more-link { font-weight: 700; color: var(--sldb-bordeaux); }
.sldb-badge-une {
	display: inline-block;
	background: var(--sldb-bordeaux);
	color: var(--sldb-blanc);
	font-size: 0.8125rem;
	font-weight: 700;
	padding: 5px 14px;
	border-radius: 999px;
	margin: 0;
}

/* ==========================================================
   15. Page d'un article (1.0.5)
   ========================================================== */
.sldb-entete-article { padding-bottom: calc(48px + var(--sldb-vague-h)); }
.sldb-retour { margin: 0; }
.sldb-retour a { color: var(--sldb-blanc); font-weight: 700; }
.sldb-badge-cat { margin: 0; }
.sldb-badge-cat a {
	display: inline-block;
	background: var(--sldb-blanc);
	color: var(--sldb-noir);
	font-size: 0.8125rem;
	font-weight: 700;
	padding: 5px 14px;
	border-radius: 999px;
	text-decoration: none;
}
.sldb-badge-cat .wp-block-post-terms__separator { display: none; }
.sldb-badge-cat a + a { margin-left: 6px; }
.sldb-date-article { color: #EDEAE8; font-size: 0.9375rem; margin: 0; }
.sldb-titre-article { color: var(--sldb-blanc); font-size: clamp(2.25rem, 5vw, 4rem) !important; max-width: 900px; }

/* Image à la une en polaroïd */
.sldb-polaroid-une {
	position: relative;
	max-width: 860px;
	margin: 0 auto 48px !important;
	background: var(--sldb-blanc);
	padding: 14px 14px 48px;
	box-shadow: var(--sldb-ombre);
}
@media (min-width: 782px) { .sldb-polaroid-une { transform: rotate(-1.5deg); } }
.sldb-polaroid-une::before {
	content: "";
	position: absolute;
	top: -12px; left: 44%;
	width: 100px; height: 26px;
	background: var(--sldb-scotch);
	transform: rotate(3deg);
	z-index: 2;
}
.sldb-polaroid-une img { width: 100%; height: auto; display: block; }

/* Texte de l'article */
.sldb-article-contenu { font-size: 1.1875rem; line-height: 1.7; }
.sldb-article-contenu > p:first-child { font-size: 1.375rem; font-weight: 500; }
.sldb-article-contenu h2 { font-size: 2rem; margin-top: 2.5rem; }
.sldb-article-contenu h3 { font-size: 1.5rem; margin-top: 2rem; }
.sldb-article-contenu a { text-decoration-thickness: 2px; text-underline-offset: 3px; }
.sldb-article-contenu .wp-block-image:not(.is-style-polaroid) img { border-radius: 24px; }
.sldb-article-contenu blockquote {
	border: 0;
	background: var(--sldb-blanc);
	border-radius: 32px 32px 32px 8px;
	padding: 24px 28px;
	font-style: italic;
}
.sldb-article-contenu ul li::marker { color: var(--sldb-bordeaux); }
.sldb-polaroid-article { max-width: 640px; margin-left: auto !important; margin-right: auto !important; }
@media (min-width: 782px) { .sldb-polaroid-article { transform: rotate(1.5deg); } }
.sldb-encadre-evenement { margin: 40px 0 !important; }

/* Bandeau de fin d'article et navigation */
.sldb-bandeau-rose {
	max-width: 760px;
	margin: 56px auto 0 !important;
	background: #F3E1E7;
	border-radius: 32px;
	padding: 24px 32px !important;
}
.sldb-nav-articles {
	max-width: 760px;
	margin: 32px auto 0 !important;
	font-weight: 700;
}
.sldb-nav-articles a { color: var(--sldb-noir); }

/* ==========================================================
   16. Page Contact (1.0.6)
   ========================================================== */
.sldb-contact-seance { margin-top: 48px !important; }
.sldb-carte-bordeaux .sldb-gros a { color: var(--sldb-blanc); }
.sldb-gros a { text-decoration: none; }
.sldb-gros a:hover { text-decoration: underline; }

/* ==========================================================
   17. Mobile : en-tête sur une ligne, collage plus compact (1.0.7)
   ========================================================== */
@media (max-width: 781px) {
	.sldb-header { padding: 10px 16px; }
	.sldb-header > .is-layout-flex { flex-wrap: nowrap !important; }
	.sldb-header.is-layout-flex { flex-wrap: nowrap !important; gap: 12px; }
	.sldb-header .sldb-allez { display: none; }
	.sldb-header .wp-block-site-logo img { height: 48px; }
	.sldb-header .wp-block-button__link { padding: 8px 14px; font-size: 0.9375rem; white-space: nowrap; }

	.sldb-collage { display: flex; flex-direction: column; align-items: center; margin-top: 24px; }
	.sldb-collage > .wp-block-image { width: 78%; }
	.sldb-collage > .wp-block-image:nth-child(1) { transform: rotate(-4deg); align-self: flex-start; }
	.sldb-collage > .wp-block-image:nth-child(2) { transform: rotate(4deg); align-self: flex-end; margin-top: -40px !important; z-index: 2; }
	.sldb-collage > .wp-block-image:nth-child(3) { transform: rotate(-2deg); margin-top: -40px !important; z-index: 3; }
	.sldb-collage > .wp-block-image { position: relative; box-shadow: 0 14px 30px rgba(0, 0, 0, 0.35); }
}

/* ==========================================================
   18. Collage de l'accueil : les 3 légendes toujours visibles (1.0.8)
   ========================================================== */
@media (min-width: 900px) {
	.sldb-collage { min-height: 680px; }
	.sldb-collage > .wp-block-image:nth-child(1) { left: 0; top: 0; width: 54%; transform: rotate(-5deg); z-index: 1; }
	.sldb-collage > .wp-block-image:nth-child(2) { left: auto; right: 0; top: 70px; width: 50%; transform: rotate(4deg); z-index: 2; }
	.sldb-collage > .wp-block-image:nth-child(3) { left: 16%; top: 385px; bottom: auto; width: 46%; transform: rotate(-2deg); z-index: 3; }
}
/* Dans le collage, la légende suit la photo au lieu d'être posée dessus : elle peut passer sur deux lignes sans être coupée */
.sldb-collage .wp-block-image.is-style-polaroid { padding-bottom: 14px; }
.sldb-collage .wp-block-image.is-style-polaroid figcaption {
	position: static;
	margin: 10px 4px 0;
	font-size: 1.35rem;
	line-height: 1.15;
}
