/* ==========================================================
   BJ PROD – Refonte A « cinéma condensé » : charte de base
   S'applique uniquement aux pages contenant le groupe .bjr-page
   ========================================================== */

:root {
	--bj-noir: #0B0B0B;
	--bj-graphite: #1A1A1A;
	--bj-blanc: #F2F2EF;
	--bj-gris: #9A9A9A;        /* texte secondaire sur fond sombre */
	--bj-gris-fonce: #5C5C5C;  /* texte secondaire sur fond clair */
	--bj-filet: #3A3A3A;
	--bj-marge: 56px;
	--bj-titre: "Archivo", "Arial Narrow", sans-serif;
	--bj-texte: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
}

@media (max-width: 781px) {
	:root { --bj-marge: 20px; }
}

/* ---------- Base de la page ---------- */
body.bjr {
	margin: 0;
	background: var(--bj-noir);
	color: var(--bj-blanc);
	font-family: var(--bj-texte);
	font-weight: 400;
	font-size: 17px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

.bjr-page,
.bjr-page * {
	box-sizing: border-box;
}

/* Pas d'arrondis, pas d'ombres, pas de dégradés */
.bjr-page *,
.bjr-page *::before,
.bjr-page *::after {
	border-radius: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	background-image: none;
}

.bjr-page {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

.bjr-page > .wp-block-group__inner-container,
.bjr-page.is-layout-flow { margin: 0; }

.bjr-page p { margin: 0 0 1em; }
.bjr-page a { color: inherit; }

/* ---------- Typographie ---------- */
.bjr-page h1,
.bjr-page h2,
.bjr-page h3,
.bjr-page .bjr-display {
	font-family: var(--bj-titre);
	font-weight: 800;
	font-stretch: 62%;
	font-variation-settings: "wdth" 62;
	text-transform: uppercase;
	line-height: 0.88;
	letter-spacing: 0;
	margin: 0;
}

.bjr-page h1, .bjr-page h2, .bjr-page h3,
.bjr-page h4, .bjr-page h5, .bjr-page h6 { color: inherit; }

.bjr-page h4,
.bjr-page h5,
.bjr-page h6 {
	font-family: var(--bj-texte);
	font-weight: 600;
	margin: 0;
}

/* Petites étiquettes : 12–13 px, majuscules, espacées */
.bjr-page .bjr-label,
.bjr-page .bjr-label a {
	font-family: var(--bj-texte);
	font-size: 12.5px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	line-height: 1.4;
	text-decoration: none;
}

/* ---------- Filets de 1 px ---------- */
.bjr-page hr,
.bjr-page .wp-block-separator {
	border: 0;
	border-top: 1px solid var(--bj-filet);
	height: 0;
	margin: 0;
	opacity: 1;
	width: 100%;
	max-width: none;
	background: none;
}
.bjr-page .bjr-clair hr,
.bjr-page .bjr-clair .wp-block-separator { border-top-color: var(--bj-noir); }

/* ---------- Fonds de section ---------- */
.bjr-page .bjr-section {
	padding-left: var(--bj-marge);
	padding-right: var(--bj-marge);
	margin: 0;
}
.bjr-page .bjr-noir     { background-color: var(--bj-noir);     color: var(--bj-blanc); }
.bjr-page .bjr-graphite { background-color: var(--bj-graphite); color: var(--bj-blanc); }
.bjr-page .bjr-clair    { background-color: var(--bj-blanc);    color: var(--bj-noir); }

.bjr-page .bjr-noir .bjr-secondaire,
.bjr-page .bjr-graphite .bjr-secondaire { color: var(--bj-gris); }
.bjr-page .bjr-clair .bjr-secondaire    { color: var(--bj-gris-fonce); }

/* ---------- Couleurs de la palette (éditeur) ---------- */
.has-bj-noir-color { color: var(--bj-noir) !important; }
.has-bj-graphite-color { color: var(--bj-graphite) !important; }
.has-bj-blanc-color { color: var(--bj-blanc) !important; }
.has-bj-gris-color { color: var(--bj-gris) !important; }
.has-bj-gris-fonce-color { color: var(--bj-gris-fonce) !important; }
.has-bj-filet-color { color: var(--bj-filet) !important; }
.has-bj-noir-background-color { background-color: var(--bj-noir) !important; }
.has-bj-graphite-background-color { background-color: var(--bj-graphite) !important; }
.has-bj-blanc-background-color { background-color: var(--bj-blanc) !important; }
.has-bj-gris-background-color { background-color: var(--bj-gris) !important; }
.has-bj-gris-fonce-background-color { background-color: var(--bj-gris-fonce) !important; }
.has-bj-filet-background-color { background-color: var(--bj-filet) !important; }

/* ---------- Boutons : rectangulaires, sans effet ---------- */
.bjr-page .wp-block-button__link {
	border-radius: 0;
	font-family: var(--bj-texte);
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	padding: 18px 28px;
	text-decoration: none;
}

/* ==========================================================
   Les styles propres à chaque section (en-tête, présentation,
   films à la une, etc.) sont ajoutés tâche par tâche ci-dessous.
   ========================================================== */

/* ---------- Utilitaires de mise en page ---------- */
.bjr-page .wp-block-group__inner-container { margin: 0; }
.bjr-page .bjr-masque { display: none !important; }
.bjr-page .bjr-entete > .wp-block-group__inner-container,
.bjr-page .bjr-ligne > .wp-block-group__inner-container {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
}
.bjr-page .bjr-entete p,
.bjr-page .bjr-ligne p { margin: 0; }

/* Liens soulignés en étiquette */
.bjr-page .bjr-lien a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 6px;
}

/* ==========================================================
   TÂCHE 2 – En-tête et vidéo plein écran
   ========================================================== */
.bjr-page .bjr-hero {
	position: relative;
	display: flex;
	align-items: stretch;
	height: 100vh;
	min-height: 640px;
	max-height: 1100px;
	padding: 0;
	margin: 0;
	background-color: var(--bj-graphite);
	color: var(--bj-blanc);
}
.bjr-page .bjr-hero .wp-block-cover__video-background,
.bjr-page .bjr-hero .wp-block-cover__image-background { object-fit: cover; }
.bjr-page .bjr-hero > .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	width: 100% !important;
	margin: 0 !important;
	max-width: none;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 0 var(--bj-marge) 36px;
	color: var(--bj-blanc);
}

/* Barre de navigation */
.bjr-page .bjr-nav > .wp-block-group__inner-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	padding: 26px 0 22px;
	border-bottom: 1px solid var(--bj-filet);
}
.bjr-page .bjr-logo {
	margin: 0;
	font-family: var(--bj-titre);
	font-weight: 800;
	font-stretch: 62%;
	font-variation-settings: "wdth" 62;
	font-size: 30px;
	line-height: 1;
	text-transform: uppercase;
	white-space: nowrap;
}
.bjr-page .bjr-logo a { text-decoration: none; color: var(--bj-blanc); }
.bjr-page .bjr-menu {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px 34px;
}
.bjr-page .bjr-menu a {
	color: var(--bj-blanc);
	text-decoration: none;
	font-size: 12.5px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.16em;
}
.bjr-page .bjr-menu a:hover,
.bjr-page .bjr-menu a:focus { color: var(--bj-gris); }

/* Titre et ligne du bas */
.bjr-page .bjr-hero-titre {
	font-size: clamp(64px, 12vw, 184px);
	line-height: 0.86;
	color: var(--bj-blanc);
	max-width: none;
	margin: 0 0 30px;
}
.bjr-page .bjr-hero .wp-block-separator { margin: 0 0 18px; }
.bjr-page .bjr-hero-ligne a { text-decoration: none; color: var(--bj-blanc); }
.bjr-page .bjr-hero-ligne .bjr-secondaire a { color: var(--bj-gris); }

/* ==========================================================
   TÂCHE 3 – Présentation
   ========================================================== */
.bjr-page .bjr-intro { padding-top: 120px; padding-bottom: 130px; }
.bjr-page .bjr-intro > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 40px;
	align-items: start;
}
.bjr-page .bjr-intro-label { margin: 6px 0 0; }
.bjr-page .bjr-lead {
	font-family: var(--bj-texte);
	font-size: 40px;
	font-weight: 500;
	line-height: 1.18;
	letter-spacing: -0.01em;
	margin: 0 0 32px;
}
.bjr-page .bjr-intro .bjr-complement {
	font-size: 19px;
	line-height: 1.5;
	max-width: 46em;
	margin: 0 0 40px;
}

/* ==========================================================
   TÂCHE 4 – Films à la une
   ========================================================== */
.bjr-page .bjr-une { padding-top: 96px; padding-bottom: 110px; }
.bjr-page .bjr-une > .wp-block-group__inner-container > .bjr-entete { margin-bottom: 18px; }
.bjr-page .bjr-une > .wp-block-group__inner-container > .wp-block-separator { margin-bottom: 40px; }
.bjr-page .bjr-cartes > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}
.bjr-page .bjr-carte-visuel {
	position: relative;
	aspect-ratio: 4 / 3;
	min-height: 0 !important;
	height: auto;
	padding: 28px;
	margin: 0 0 16px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	background-color: var(--bj-graphite);
	overflow: hidden;
}
.bjr-page .bjr-carte-visuel .wp-block-cover__image-background {
	object-fit: cover;
	transition: transform .6s ease;
}
.bjr-page .bjr-carte:hover .wp-block-cover__image-background { transform: scale(1.03); }
.bjr-page .bjr-carte-visuel > .wp-block-cover__inner-container {
	width: 100% !important;
	margin: 0 !important;
	position: static;
	z-index: 2;
	color: var(--bj-blanc);
}
.bjr-page .bjr-carte-titre {
	font-size: clamp(48px, 7.6vw, 110px);
	line-height: 0.86;
	color: var(--bj-blanc);
	max-width: none;
}
.bjr-page .bjr-carte-titre a {
	color: var(--bj-blanc);
	text-decoration: none;
	position: relative;
	z-index: 3;
}
/* toute la carte est cliquable */
.bjr-page .bjr-carte-titre a::after {
	content: "";
	position: absolute;
	inset: -2000px;
}
.bjr-page .bjr-carte-visuel { isolation: isolate; }
.bjr-page .bjr-carte-meta p { color: var(--bj-gris); }

/* ==========================================================
   TÂCHE 5 – Ce que nous faisons
   ========================================================== */
.bjr-page .bjr-metiers { padding-top: 110px; padding-bottom: 120px; }
.bjr-page .bjr-metiers-titre {
	font-size: clamp(48px, 6.1vw, 88px);
	margin: 0 0 64px;
}
.bjr-page .bjr-metiers-grille > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid var(--bj-filet);
}
.bjr-page .bjr-metier {
	padding: 30px 28px 10px;
	border-left: 1px solid var(--bj-filet);
}
.bjr-page .bjr-metier:first-child { border-left: 0; padding-left: 0; }
.bjr-page .bjr-metier .bjr-num { color: var(--bj-gris); margin: 0 0 40px; }
.bjr-page .bjr-metier h3 {
	font-family: var(--bj-texte);
	font-stretch: 100%;
	font-variation-settings: normal;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.2;
	text-transform: none;
	margin: 0 0 16px;
}
.bjr-page .bjr-metier p:not(.bjr-num) { color: var(--bj-gris); font-size: 16px; line-height: 1.55; }

/* ==========================================================
   TÂCHE 6 – Films récents
   ========================================================== */
.bjr-page .bjr-recents { padding-top: 110px; padding-bottom: 120px; }
.bjr-page .bjr-recents-entete > .wp-block-group__inner-container {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 24px;
	flex-wrap: wrap;
	margin-bottom: 48px;
}
.bjr-page .bjr-recents-titre { font-size: clamp(48px, 6.1vw, 88px); }
.bjr-page .bjr-filtres { display: flex; gap: 0; margin: 0; }
.bjr-page .bjr-filtres .wp-block-button { margin: 0; }
.bjr-page .bjr-filtres .wp-block-button + .wp-block-button { margin-left: -1px; }
.bjr-page .bjr-filtres .wp-block-button__link {
	background: transparent;
	color: var(--bj-noir);
	border: 1px solid var(--bj-noir);
	padding: 14px 20px;
	font-size: 12.5px;
	cursor: pointer;
}
.bjr-page .bjr-filtres .is-actif .wp-block-button__link {
	background: var(--bj-noir);
	color: var(--bj-blanc);
}
.bjr-page .bjr-grille > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px 20px;
}
.bjr-page .bjr-vignette figure,
.bjr-page .bjr-vignette .wp-block-image { margin: 0 0 14px; }
.bjr-page .bjr-vignette img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	background: var(--bj-graphite);
}
.bjr-page .bjr-vignette-titre {
	border-top: 1px solid var(--bj-noir);
	padding-top: 12px;
	margin: 0 0 6px !important;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	line-height: 1.3;
}
.bjr-page .bjr-vignette-titre a { text-decoration: none; }
.bjr-page .bjr-vignette .bjr-label { margin: 0; }
.bjr-page .bjr-vignette.est-filtre { display: none; }

/* ==========================================================
   TÂCHE 7 – Appel à l'action, logos, pied de page
   ========================================================== */
.bjr-page .bjr-cta { padding-top: 120px; padding-bottom: 120px; border-bottom: 1px solid var(--bj-filet); }
.bjr-page .bjr-cta .bjr-label { margin: 0 0 24px; }
.bjr-page .bjr-cta-titre {
	font-size: clamp(64px, 16.7vw, 240px);
	line-height: 0.86;
	margin: 0 0 48px;
}
.bjr-page .bjr-bouton-clair .wp-block-button__link {
	background: var(--bj-blanc);
	color: var(--bj-noir);
	border: 1px solid var(--bj-blanc);
}
.bjr-page .bjr-bouton-clair .wp-block-button__link:hover {
	background: transparent;
	color: var(--bj-blanc);
}

.bjr-page .bjr-logos { padding-top: 80px; padding-bottom: 80px; border-bottom: 1px solid var(--bj-filet); }
.bjr-page .bjr-logos > .wp-block-group__inner-container > .bjr-label { margin: 0 0 40px; }
.bjr-page .bjr-logos-rangee > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 24px;
	align-items: center;
	padding: 28px 0;
	border-top: 1px solid var(--bj-filet);
}
.bjr-page .bjr-logos-rangee .bjr-label { margin: 0; }
.bjr-page .bjr-logos-liste > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 28px 56px;
}
.bjr-page .bjr-logos-liste figure,
.bjr-page .bjr-logos-liste .wp-block-image { margin: 0; }
.bjr-page .bjr-logos-liste img {
	display: block;
	height: 44px;
	width: auto;
	max-width: 150px;
	object-fit: contain;
	filter: grayscale(1) invert(1) contrast(1.4);
	mix-blend-mode: screen;
	opacity: .9;
}
.bjr-page .bjr-logos-liste img[alt="Canal+"] { height: 72px; max-width: 200px; margin: -14px 0; }
.bjr-page .bjr-logo-texte {
	margin: 0;
	font-family: var(--bj-titre);
	font-weight: 800;
	font-stretch: 62%;
	font-variation-settings: "wdth" 62;
	font-size: 26px;
	text-transform: uppercase;
	color: #d6d6d3;
}

.bjr-page .bjr-footer { padding-top: 72px; padding-bottom: 56px; }
.bjr-page .bjr-footer > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: 40px;
	align-items: end;
}
.bjr-page .bjr-footer-logo {
	margin: 0;
	font-family: var(--bj-titre);
	font-weight: 800;
	font-stretch: 62%;
	font-variation-settings: "wdth" 62;
	font-size: clamp(72px, 9vw, 140px);
	line-height: 0.86;
	text-transform: uppercase;
}
.bjr-page .bjr-footer-infos p { margin: 0 0 6px; color: var(--bj-blanc); font-size: 17px; }
.bjr-page .bjr-footer-infos a { text-decoration: none; }
.bjr-page .bjr-footer-infos .bjr-secondaire { color: var(--bj-gris); }

/* ==========================================================
   Responsive
   ========================================================== */
@media (max-width: 1100px) {
	.bjr-page .bjr-grille > .wp-block-group__inner-container { grid-template-columns: repeat(2, 1fr); }
	.bjr-page .bjr-metiers-grille > .wp-block-group__inner-container { grid-template-columns: repeat(2, 1fr); }
	.bjr-page .bjr-metier:nth-child(3) { border-left: 0; padding-left: 0; }
	.bjr-page .bjr-metier:nth-child(n+3) { border-top: 1px solid var(--bj-filet); }
}
@media (max-width: 781px) {
	.bjr-page .bjr-nav > .wp-block-group__inner-container { flex-direction: column; align-items: flex-start; gap: 14px; }
	.bjr-page .bjr-menu { justify-content: flex-start; gap: 8px 20px; }
	.bjr-page .bjr-menu a { font-size: 12px; }
	.bjr-page .bjr-hero-titre { font-size: 64px; }
	.bjr-page .bjr-intro { padding-top: 72px; padding-bottom: 80px; }
	.bjr-page .bjr-intro > .wp-block-group__inner-container { grid-template-columns: 1fr; gap: 20px; }
	.bjr-page .bjr-lead { font-size: 26px; }
	.bjr-page .bjr-intro .bjr-complement { font-size: 17px; }
	.bjr-page .bjr-une, .bjr-page .bjr-metiers, .bjr-page .bjr-recents, .bjr-page .bjr-cta { padding-top: 72px; padding-bottom: 80px; }
	.bjr-page .bjr-cartes > .wp-block-group__inner-container { grid-template-columns: 1fr; gap: 40px; }
	.bjr-page .bjr-carte-visuel { padding: 20px; }
	.bjr-page .bjr-carte-titre { font-size: 56px; }
	.bjr-page .bjr-entete > .wp-block-group__inner-container,
	.bjr-page .bjr-ligne > .wp-block-group__inner-container { flex-direction: column; align-items: flex-start; gap: 6px; }
	.bjr-page .bjr-hero-ligne > .wp-block-group__inner-container,
	.bjr-page .bjr-une > .wp-block-group__inner-container > .bjr-entete > .wp-block-group__inner-container { flex-direction: row; justify-content: space-between; }
	.bjr-page .bjr-metiers-grille > .wp-block-group__inner-container { grid-template-columns: 1fr; }
	.bjr-page .bjr-metier { border-left: 0; padding: 26px 0 8px; border-top: 1px solid var(--bj-filet); }
	.bjr-page .bjr-metier:first-child { border-top: 0; }
	.bjr-page .bjr-metier .bjr-num { margin-bottom: 16px; }
	.bjr-page .bjr-grille > .wp-block-group__inner-container { grid-template-columns: repeat(2, 1fr); gap: 28px 12px; }
	.bjr-page .bjr-vignette-titre { font-size: 13px; }
	.bjr-page .bjr-filtres .wp-block-button__link { padding: 12px 14px; font-size: 11.5px; }
	.bjr-page .bjr-cta-titre { font-size: 64px; }
	.bjr-page .bjr-logos-rangee > .wp-block-group__inner-container { grid-template-columns: 1fr; }
	.bjr-page .bjr-logos-liste > .wp-block-group__inner-container { gap: 22px 32px; }
	.bjr-page .bjr-logos-liste img { height: 34px; max-width: 120px; }
	.bjr-page .bjr-footer > .wp-block-group__inner-container { grid-template-columns: 1fr; }
}
@media (max-width: 781px) {
	.bjr-page .bjr-filtres { flex-wrap: nowrap; }
	.bjr-page .bjr-filtres .wp-block-button__link { padding: 12px 12px; font-size: 11px; letter-spacing: 0.1em; white-space: nowrap; }
	.bjr-page .bjr-cta-titre { font-size: min(64px, 17vw); white-space: nowrap; }
}

/* Crédits sous les cartes « À la une » : chaque info reste sur une ligne */
.bjr-page .bjr-carte-meta > .wp-block-group__inner-container { flex-wrap: wrap; row-gap: 4px; }
.bjr-page .bjr-carte-meta p { white-space: nowrap; }
@media (max-width: 781px) {
	.bjr-page .bjr-carte-meta p { white-space: normal; }
}

/* ==========================================================
   Bandeau cookies (extension BE GDPR) aux couleurs de la charte
   ========================================================== */
.be-gdpr-cookie-notice-bar {
	background: var(--bj-noir) !important;
	color: var(--bj-gris) !important;
	border-top: 1px solid var(--bj-filet) !important;
	box-shadow: none !important;
	font-family: var(--bj-texte) !important;
}
.be-gdpr-cookie-notice-wrap {
	padding-left: var(--bj-marge) !important;
	padding-right: var(--bj-marge) !important;
	gap: 24px;
}
.be-gdpr-cookie-notice-bar-text {
	color: var(--bj-gris) !important;
	font-family: var(--bj-texte) !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
}
.be-gdpr-cookie-notice-bar-text a {
	color: var(--bj-blanc) !important;
	text-decoration: underline !important;
	text-underline-offset: 4px;
}
.be-gdpr-cookie-notice-button,
.be-gdpr-modal-save-btn {
	background: var(--bj-blanc) !important;
	color: var(--bj-noir) !important;
	border: 1px solid var(--bj-blanc) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: var(--bj-texte) !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.16em !important;
	padding: 14px 24px !important;
	cursor: pointer;
}
.be-gdpr-cookie-notice-button:hover,
.be-gdpr-modal-save-btn:hover {
	background: transparent !important;
	color: var(--bj-blanc) !important;
}

/* Fenêtre « Privacy Settings » */
.be-gdpr-modal,
.be-gdpr-modal-footer {
	background: var(--bj-noir) !important;
	color: var(--bj-blanc) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: var(--bj-texte) !important;
}
.be-gdpr-modal { border: 1px solid var(--bj-filet) !important; }
.be-gdpr-modal-footer { border-top: 1px solid var(--bj-filet) !important; }
.be-gdpr-modal-heading {
	color: var(--bj-blanc) !important;
	font-family: var(--bj-titre) !important;
	font-weight: 800 !important;
	font-stretch: 62%;
	font-variation-settings: "wdth" 62;
	text-transform: uppercase !important;
	font-size: 34px !important;
	line-height: 0.9 !important;
}
.be-gdpr-modal-desc,
.be-gdpr-modal-item-desc { color: var(--bj-gris) !important; font-family: var(--bj-texte) !important; }
.be-gdpr-modal-desc a { color: var(--bj-blanc) !important; }
.be-gdpr-modal-item { border-color: var(--bj-filet) !important; }
.be-gdpr-modal-item-head {
	color: var(--bj-blanc) !important;
	font-family: var(--bj-texte) !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.16em !important;
}
/* Interrupteurs : carrés, blanc cassé quand activés */
.be-gdpr-modal-item-switch label,
.be-gdpr-modal-item-switch .be-gdpr-slider,
.be-gdpr-modal-item-switch span {
	border-radius: 0 !important;
	box-shadow: none !important;
}
.be-gdpr-switch-input:checked + * ,
.be-gdpr-switch-input:checked + label {
	background-color: var(--bj-blanc) !important;
}

@media (max-width: 781px) {
	.be-gdpr-cookie-notice-wrap { flex-direction: column; align-items: flex-start !important; }
}

/* ==========================================================
   TÂCHE 2 bis – Logo « Cinémascope » (texte + deux bandes)
   ========================================================== */
.bjr-page .bjr-logo,
.bjr-page .bjr-footer-logo { margin: 0; line-height: 1; font-size: 0 !important; }
.bjr-page .bjr-logo { font-size: 0 !important; }
.bjr-page .bjr-logo a,
.bjr-page .bjr-footer-logo a {
	display: inline-block;
	color: inherit;
	text-decoration: none;
	font-family: var(--bj-titre);
	font-weight: 800;
	font-stretch: 62%;
	font-variation-settings: "wdth" 62;
	text-transform: uppercase;
	white-space: nowrap;
	line-height: 0.687;           /* hauteur des capitales : bandes au ras du texte */
	border-top: 3px solid currentColor;
	border-bottom: 3px solid currentColor;
	padding: 5px 0;
	font-size: 30px;
}
.bjr-page .bjr-footer-logo a {
	font-size: 56px;
	border-top-width: 5px;
	border-bottom-width: 5px;
	padding: 8px 0;
}
.bjr-page .bjr-noir .bjr-logo a, .bjr-page .bjr-graphite .bjr-logo a,
.bjr-page .bjr-hero .bjr-logo a, .bjr-page .bjr-header .bjr-logo a { color: var(--bj-blanc); }
.bjr-page .bjr-clair .bjr-logo a { color: var(--bj-noir); }

/* ==========================================================
   En-tête des pages intérieures (bloc réutilisable)
   ========================================================== */
.bjr-page .bjr-header {
	background: var(--bj-noir);
	color: var(--bj-blanc);
	padding: 0 var(--bj-marge);
	margin: 0;
}
.bjr-page .bjr-hero .bjr-header { background: transparent; padding: 0; }
.bjr-page .bjr-menu a[aria-current="page"],
.bjr-page .bjr-menu a.is-actif { color: var(--bj-gris); }

/* Titres de page */
.bjr-page .bjr-titre-page { padding-top: 96px; padding-bottom: 72px; }
.bjr-page .bjr-titre-page .bjr-label { margin: 0 0 22px; }
.bjr-page .bjr-display-xl {
	font-size: clamp(64px, 11vw, 160px);
	line-height: 0.86;
	margin: 0;
}

/* ==========================================================
   Page Films (grille complète) : réutilise .bjr-grille / .bjr-vignette
   ========================================================== */
.bjr-page .bjr-films { padding-top: 0; padding-bottom: 120px; }
.bjr-page .bjr-films .bjr-recents-entete > .wp-block-group__inner-container { margin-bottom: 40px; }
.bjr-page .bjr-vignette-sans-image img { background: var(--bj-graphite); }

/* ==========================================================
   TÂCHE 10 – Fiche film
   ========================================================== */
.bjr-page .bjr-fiche-tete { padding-top: 64px; padding-bottom: 56px; }
.bjr-page .bjr-retour { margin: 0 0 48px; }
.bjr-page .bjr-retour a { color: var(--bj-gris-fonce); text-decoration: none; }
.bjr-page .bjr-retour a:hover { color: var(--bj-noir); }
.bjr-page .bjr-fiche-titre {
	font-size: clamp(64px, 18.75vw, 270px);
	line-height: 0.84;
	margin: 0 0 28px;
	overflow-wrap: anywhere;
	hyphens: none;
}
.bjr-page .bjr-fiche-titre.bjr-long { font-size: clamp(56px, 11vw, 170px); }
.bjr-page .bjr-fiche-tete .bjr-label { margin: 0; }

/* Vidéo 21:9 */
.bjr-page .bjr-video { background: var(--bj-graphite); padding-top: 0; padding-bottom: 0; }
.bjr-page .bjr-video-cadre {
	position: relative;
	aspect-ratio: 21 / 9;
	min-height: 0 !important;
	padding: 0;
	margin: 0;
	background: var(--bj-graphite);
	overflow: hidden;
	display: flex;
	align-items: flex-end;
}
.bjr-page .bjr-video-cadre > .wp-block-cover__inner-container {
	width: 100% !important;
	margin: 0 !important;
	padding: 32px;
	z-index: 2;
}
.bjr-page .bjr-video-cadre iframe,
.bjr-page .bjr-video-cadre video.bjr-lecteur {
	position: absolute; inset: 0; width: 100%; height: 100%; border: 0; z-index: 5; background: #000;
}
.bjr-page .bjr-play { margin: 0; }
.bjr-page .bjr-play a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 84px;
	height: 84px;
	border: 2px solid var(--bj-blanc);
	border-radius: 50% !important;
	color: var(--bj-blanc);
	font-size: 0;
	text-decoration: none;
	position: relative;
}
.bjr-page .bjr-play a::before {
	content: "";
	border-style: solid;
	border-width: 13px 0 13px 21px;
	border-color: transparent transparent transparent var(--bj-blanc);
	margin-left: 6px;
}
.bjr-page .bjr-play a:hover { background: rgba(242,242,239,.12); }

/* Infos + synopsis */
.bjr-page .bjr-fiche-infos { padding-top: 96px; padding-bottom: 110px; }
.bjr-page .bjr-fiche-infos > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 56px;
	align-items: start;
}
.bjr-page .bjr-tableau { border-top: 1px solid var(--bj-noir); }
.bjr-page .bjr-tab-ligne > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 16px;
	padding: 14px 0;
	border-bottom: 1px solid #C9C9C4;
}
.bjr-page .bjr-tab-ligne p { margin: 0; font-size: 16px; line-height: 1.4; }
.bjr-page .bjr-tab-ligne .bjr-label { color: var(--bj-gris-fonce); padding-top: 2px; }
.bjr-page .bjr-synopsis .bjr-lead { font-size: 30px; line-height: 1.25; margin: 0 0 28px; }
.bjr-page .bjr-synopsis p:not(.bjr-lead):not(.bjr-label),
.bjr-page .bjr-synopsis li { font-size: 18px; line-height: 1.6; color: var(--bj-gris-fonce); }
.bjr-page .bjr-synopsis h2, .bjr-page .bjr-synopsis h3 {
	font-family: var(--bj-texte); font-stretch: 100%; font-variation-settings: normal;
	text-transform: uppercase; font-size: 13px; letter-spacing: .16em; font-weight: 600;
	line-height: 1.4; margin: 36px 0 12px; color: var(--bj-noir);
}
.bjr-page .bjr-synopsis a { color: var(--bj-noir); }

/* Photogrammes */
.bjr-page .bjr-photogrammes { padding-top: 96px; padding-bottom: 96px; }
.bjr-page .bjr-photogrammes > .wp-block-group__inner-container > .bjr-entete { margin-bottom: 18px; }
.bjr-page .bjr-photogrammes > .wp-block-group__inner-container > .wp-block-separator { margin-bottom: 32px; }
.bjr-page .bjr-photos > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}
.bjr-page .bjr-photos figure { margin: 0; }
.bjr-page .bjr-photos img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.bjr-page .bjr-photos figcaption {
	color: var(--bj-gris); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; margin: 8px 0 0; text-align: left;
}
.bjr-page .bjr-presse > .wp-block-group__inner-container {
	display: grid; grid-template-columns: 1fr 2fr; gap: 40px; padding-top: 40px; margin-top: 64px; border-top: 1px solid var(--bj-filet);
}
.bjr-page .bjr-presse p { margin: 0; }
.bjr-page .bjr-presse .bjr-citation { font-size: 26px; line-height: 1.3; }

/* Film suivant */
.bjr-page .bjr-suivant { padding-top: 80px; padding-bottom: 96px; }
.bjr-page .bjr-suivant .bjr-label { margin: 0 0 18px; }
.bjr-page .bjr-suivant-titre { font-size: clamp(48px, 8vw, 120px); line-height: .88; }
.bjr-page .bjr-suivant-titre a { text-decoration: none; color: inherit; }
.bjr-page .bjr-suivant-titre a:hover { color: var(--bj-gris-fonce); }

/* ==========================================================
   Hero image (Production exécutive)
   ========================================================== */
.bjr-page .bjr-hero-image { background-color: var(--bj-graphite); }
.bjr-page .bjr-hero-label { margin: 0 0 22px; color: var(--bj-blanc); }

/* Ligne « Tournés dans le Sud » */
.bjr-page .bjr-ligne-films { padding-top: 56px; padding-bottom: 56px; }
.bjr-page .bjr-ligne-films > .wp-block-group__inner-container {
	display: grid; grid-template-columns: 220px 1fr; gap: 24px; align-items: baseline;
}
.bjr-page .bjr-ligne-films p { margin: 0; }
.bjr-page .bjr-ligne-films p:not(.bjr-label) { font-size: 22px; line-height: 1.4; }

/* ==========================================================
   TÂCHE 14 – Contact
   ========================================================== */
.bjr-page .bjr-contact { padding-top: 96px; padding-bottom: 120px; }
.bjr-page .bjr-contact .bjr-cta-titre { margin-bottom: 72px; }
.bjr-page .bjr-contact-grille > .wp-block-group__inner-container {
	display: grid; grid-template-columns: 1fr 2fr; gap: 64px; align-items: start;
}
.bjr-page .bjr-coord { margin: 0 0 32px; }
.bjr-page .bjr-coord .bjr-label { color: var(--bj-gris); margin: 0 0 8px; }
.bjr-page .bjr-coord p:not(.bjr-label) { margin: 0; font-size: 20px; line-height: 1.5; }
.bjr-page .bjr-coord a { text-decoration: none; }
.bjr-page .bjr-coord a:hover { text-decoration: underline; text-underline-offset: 5px; }

/* Formulaire existant (Oshine) restylé */
.bjr-page .bjr-formulaire form { margin: 0; }
.bjr-page .bjr-formulaire input[type="text"],
.bjr-page .bjr-formulaire input[type="email"],
.bjr-page .bjr-formulaire input[type="tel"],
.bjr-page .bjr-formulaire textarea,
.bjr-page .bjr-formulaire select {
	width: 100% !important;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid var(--bj-blanc) !important;
	color: var(--bj-blanc) !important;
	font-family: var(--bj-texte) !important;
	font-size: 18px !important;
	padding: 12px 0 !important;
	margin: 0 0 28px !important;
	height: auto !important;
	outline: none;
	-webkit-appearance: none;
}
.bjr-page .bjr-formulaire textarea { min-height: 150px; resize: vertical; }
.bjr-page .bjr-formulaire input::placeholder,
.bjr-page .bjr-formulaire textarea::placeholder {
	color: var(--bj-gris) !important; opacity: 1;
	font-size: 12.5px; text-transform: uppercase; letter-spacing: .16em;
}
.bjr-page .bjr-formulaire input:focus,
.bjr-page .bjr-formulaire textarea:focus { border-bottom-color: var(--bj-gris) !important; }
.bjr-page .bjr-formulaire label {
	display: block; color: var(--bj-gris); font-size: 12.5px; text-transform: uppercase; letter-spacing: .16em; font-weight: 500;
}
.bjr-page .bjr-formulaire input[type="submit"],
.bjr-page .bjr-formulaire button,
.bjr-page .bjr-formulaire .contact_submit {
	background: var(--bj-blanc) !important;
	color: var(--bj-noir) !important;
	border: 1px solid var(--bj-blanc) !important;
	font-family: var(--bj-texte) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: .16em;
	padding: 18px 32px !important;
	width: auto !important;
	height: auto !important;
	cursor: pointer;
}
.bjr-page .bjr-formulaire input[type="submit"]:hover,
.bjr-page .bjr-formulaire .contact_submit:hover { background: transparent !important; color: var(--bj-blanc) !important; }
.bjr-page .bjr-formulaire .contact_form_row,
.bjr-page .bjr-formulaire .column,
.bjr-page .bjr-formulaire .contact_form_name,
.bjr-page .bjr-formulaire .contact_form_email { width: 100% !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.bjr-page .bjr-formulaire .contact_status,
.bjr-page .bjr-formulaire .contact_loader { color: var(--bj-gris); font-size: 15px; }

/* ==========================================================
   Mentions légales
   ========================================================== */
.bjr-page .bjr-texte-legal { padding-bottom: 120px; }
.bjr-page .bjr-texte-legal > .wp-block-group__inner-container { max-width: 820px; }
.bjr-page .bjr-texte-legal,
.bjr-page .bjr-texte-legal p,
.bjr-page .bjr-texte-legal li,
.bjr-page .bjr-texte-legal td { font-family: var(--bj-texte); font-size: 16px; line-height: 1.65; color: var(--bj-noir); }
.bjr-page .bjr-texte-legal h1, .bjr-page .bjr-texte-legal h2,
.bjr-page .bjr-texte-legal h3, .bjr-page .bjr-texte-legal h4 {
	font-family: var(--bj-texte); font-stretch: 100%; font-variation-settings: normal; text-transform: uppercase;
	font-size: 13px; letter-spacing: .16em; font-weight: 600; line-height: 1.4; margin: 40px 0 12px;
}
.bjr-page .bjr-texte-legal a { color: var(--bj-noir); text-decoration: underline; text-underline-offset: 4px; }

/* ==========================================================
   Responsive des nouvelles pages
   ========================================================== */
@media (max-width: 1100px) {
	.bjr-page .bjr-photos > .wp-block-group__inner-container { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 781px) {
	.bjr-page .bjr-logo a { font-size: 26px; }
	.bjr-page .bjr-footer-logo a { font-size: 48px; }
	.bjr-page .bjr-titre-page { padding-top: 56px; padding-bottom: 40px; }
	.bjr-page .bjr-display-xl { font-size: 64px; }
	.bjr-page .bjr-fiche-tete { padding-top: 40px; padding-bottom: 40px; }
	.bjr-page .bjr-retour { margin-bottom: 28px; }
	.bjr-page .bjr-fiche-titre, .bjr-page .bjr-fiche-titre.bjr-long { font-size: 56px; }
	.bjr-page .bjr-video { padding-left: 0; padding-right: 0; }
	.bjr-page .bjr-video-cadre > .wp-block-cover__inner-container { padding: 16px; }
	.bjr-page .bjr-play a { width: 56px; height: 56px; }
	.bjr-page .bjr-play a::before { border-width: 9px 0 9px 15px; margin-left: 4px; }
	.bjr-page .bjr-fiche-infos { padding-top: 56px; padding-bottom: 64px; }
	.bjr-page .bjr-fiche-infos > .wp-block-group__inner-container,
	.bjr-page .bjr-contact-grille > .wp-block-group__inner-container,
	.bjr-page .bjr-presse > .wp-block-group__inner-container,
	.bjr-page .bjr-ligne-films > .wp-block-group__inner-container { grid-template-columns: 1fr; gap: 24px; }
	.bjr-page .bjr-synopsis .bjr-lead { font-size: 22px; }
	.bjr-page .bjr-synopsis p:not(.bjr-lead):not(.bjr-label) { font-size: 16px; }
	.bjr-page .bjr-photos > .wp-block-group__inner-container { grid-template-columns: 1fr; }
	.bjr-page .bjr-photogrammes, .bjr-page .bjr-suivant, .bjr-page .bjr-contact { padding-top: 56px; padding-bottom: 64px; }
	.bjr-page .bjr-suivant-titre { font-size: 48px; }
	.bjr-page .bjr-ligne-films p:not(.bjr-label) { font-size: 18px; }
	.bjr-page .bjr-coord p:not(.bjr-label) { font-size: 18px; }
}

/* --- Retouches 1.3.1 --- */
.bjr-page .bjr-tab-ligne > .wp-block-group__inner-container { grid-template-columns: 150px 1fr; }
.bjr-page .bjr-tab-ligne .bjr-label { font-size: 11.5px; letter-spacing: .14em; white-space: nowrap; }
.bjr-page .bjr-formulaire fieldset { border: 0 !important; padding: 0 !important; margin: 0 !important; min-width: 0; }
.bjr-page .bjr-formulaire .contact_loader { display: none; }
.bjr-page .bjr-formulaire .contact_status:empty { display: none; }
.bjr-page .bjr-formulaire .contact_status { margin-top: 16px; color: var(--bj-blanc); background: transparent !important; border: 0 !important; padding: 0 !important; }
.bjr-page .bjr-formulaire .contact_form_module { padding: 0 !important; background: transparent !important; }
@media (max-width: 781px) {
	.bjr-page .bjr-tab-ligne > .wp-block-group__inner-container { grid-template-columns: 120px 1fr; }
}
