/* ============================================================
   Bigju — Editorial CSS
   Magazine-style éditorial : Fraunces + Inter, hairlines .5px,
   datelines, eyebrows, animations reveal douces.
   Compatibles avec les blocs FSE Gutenberg.
   ============================================================ */

/* ───────── Variables (miroirs theme.json pour usage CSS direct) */
:root {
	--bigju-ink:        var(--wp--preset--color--ink, #0E0E0C);
	--bigju-paper:      var(--wp--preset--color--paper, #F2EDE4);
	--bigju-accent:     var(--wp--preset--color--accent, #A8631F);
	--bigju-muted:      var(--wp--preset--color--muted, rgba(14,14,12,0.58));
	--bigju-rule:       var(--wp--preset--color--rule, rgba(14,14,12,0.16));
	--bigju-paper-pure: var(--wp--preset--color--paper-pure, #FFFFFF);

	--bigju-serif: var(--wp--preset--font-family--serif, 'Fraunces', Georgia, serif);
	--bigju-sans:  var(--wp--preset--font-family--sans, 'Inter', system-ui, sans-serif);
	--bigju-mono:  var(--wp--preset--font-family--mono, ui-monospace, Menlo, monospace);

	--bigju-pad: clamp(20px, 5vw, 64px);
}

/* ───────── Base ── */
html, body {
	background: var(--bigju-paper);
	color: var(--bigju-ink);
}
body {
	font-family: var(--bigju-sans);
	font-feature-settings: "ss01", "ss02";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	letter-spacing: -0.005em;
	text-rendering: optimizeLegibility;
}
::selection { background: var(--bigju-accent); color: var(--bigju-paper); }

img { max-width: 100%; height: auto; display: block; }

/* ───────── Container max-width helpers ── */
.bigju-page { max-width: 1320px; margin: 0 auto; padding-left: var(--bigju-pad); padding-right: var(--bigju-pad); }
.bigju-page--narrow { max-width: 1080px; }
.bigju-page--prose  { max-width: 760px; }

/* Bleed full-width depuis un container constraint */
.bigju-bleed { margin-left: calc(-1 * var(--bigju-pad)); margin-right: calc(-1 * var(--bigju-pad)); }

/* ───────── Eyebrow / dateline ── */
.bigju-eyebrow {
	font-family: var(--bigju-sans);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bigju-muted);
	font-weight: 500;
	display: inline-block;
}
.bigju-eyebrow--mono {
	font-family: var(--bigju-mono);
	font-weight: 400;
}
.bigju-eyebrow--accent { color: var(--bigju-accent); }

/* Dateline strip (haut de page) */
.bigju-dateline {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 12px;
	padding-bottom: 32px;
	border-bottom: 0.5px solid var(--bigju-rule);
}

/* ───────── Hairline rules ── */
.bigju-rule { border: 0; border-top: 0.5px solid var(--bigju-rule); margin: 0; height: 0; }
.bigju-rule--ink { border-top-color: var(--bigju-ink); }

.bigju-hairline-top    { border-top:    0.5px solid var(--bigju-rule); }
.bigju-hairline-bottom { border-bottom: 0.5px solid var(--bigju-rule); }

/* ───────── Section header (numéroté magazine) ── */
.bigju-section-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	gap: clamp(16px, 3vw, 48px);
	align-items: baseline;
	padding: 56px 0 28px;
	border-top: 0.5px solid var(--bigju-rule);
}
.bigju-section-head__num {
	font-family: var(--bigju-serif);
	font-style: italic;
	font-size: 14px;
	color: var(--bigju-muted);
	margin-bottom: 8px;
}
.bigju-section-head__title {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(28px, 4.6vw, 64px);
	line-height: 1.04;
	letter-spacing: -0.02em;
	margin: 0 0 16px;
	text-wrap: balance;
}
.bigju-section-head__lede {
	max-width: 56ch;
	margin: 0;
	color: var(--bigju-muted);
	font-size: clamp(15px, 1.1vw, 17px);
	line-height: 1.6;
}
@media (max-width: 760px) {
	.bigju-section-head { grid-template-columns: 1fr; }
}

/* ───────── Display headings (Fraunces — opsz haut pour gros titres = traits fins, contraste élevé) ── */
.bigju-display {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(54px, 11vw, 168px);
	line-height: 0.92;
	letter-spacing: -0.035em;
	margin: 0;
	text-wrap: balance;
	font-variation-settings: "opsz" 144, "SOFT" 0, "WONK" 0;
	font-optical-sizing: auto;
}
.bigju-display em, .bigju-display i {
	font-style: italic;
	font-weight: 300;
	font-variation-settings: "opsz" 144, "SOFT" 0, "WONK" 0;
}

.bigju-h1 {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(48px, 9vw, 140px);
	line-height: 0.95;
	letter-spacing: -0.035em;
	margin: 0;
	text-wrap: balance;
	font-variation-settings: "opsz" 144;
	font-optical-sizing: auto;
}

.bigju-h2 {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(38px, 5.5vw, 84px);
	line-height: 1;
	letter-spacing: -0.025em;
	margin: 0;
	text-wrap: balance;
	font-variation-settings: "opsz" 144;
	font-optical-sizing: auto;
}

/* ───────── Lede (chapeau) ── */
.bigju-lede {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(18px, 1.7vw, 26px);
	line-height: 1.45;
	max-width: 52ch;
	text-wrap: balance;
}

/* ───────── Italic accent ── */
.bigju-italic-accent {
	font-style: italic;
	color: var(--bigju-accent);
}

/* ───────── Inline link with editorial underline ── */
.bigju-ilink {
	color: inherit;
	border-bottom: 0.5px solid currentColor;
	padding-bottom: 1px;
	transition: opacity 0.2s;
}
.bigju-ilink:hover { opacity: 0.6; }
.bigju-ilink--accent { color: var(--bigju-accent); border-bottom-color: var(--bigju-accent); }

/* ───────── Buttons (éditorial — pas de radius, hairline) ── */
.bigju-btn {
	display: inline-block;
	appearance: none;
	background: transparent;
	color: var(--bigju-ink);
	border: 0.5px solid var(--bigju-ink);
	padding: 14px 24px;
	font-family: var(--bigju-sans);
	font-size: 13px;
	letter-spacing: 0.04em;
	cursor: pointer;
	text-decoration: none;
	transition: background 0.2s, color 0.2s;
	text-transform: none;
}
.bigju-btn:hover { background: var(--bigju-ink); color: var(--bigju-paper); }
.bigju-btn--filled { background: var(--bigju-ink); color: var(--bigju-paper); }
.bigju-btn--filled:hover { background: var(--bigju-accent); color: var(--bigju-paper); }
.bigju-btn--paper { background: var(--bigju-paper); color: var(--bigju-ink); border-color: var(--bigju-paper); }
.bigju-btn--paper:hover { background: var(--bigju-accent); color: var(--bigju-paper); border-color: var(--bigju-accent); }
.bigju-btn--inverse { color: var(--bigju-paper); border-color: rgba(255,255,255,0.6); }
.bigju-btn--inverse:hover { background: var(--bigju-paper); color: var(--bigju-ink); }

/* ───────── Top nav ── */
.bigju-topnav {
	position: sticky;
	top: 0;
	z-index: 50;
	background: transparent;
	border-bottom: 0.5px solid transparent;
	transition: background 0.3s, border-color 0.3s, backdrop-filter 0.3s;
}
.bigju-topnav.is-scrolled {
	background: rgba(242, 237, 228, 0.92);
	-webkit-backdrop-filter: blur(18px) saturate(140%);
	backdrop-filter: blur(18px) saturate(140%);
	border-bottom-color: var(--bigju-rule);
}
.bigju-topnav__inner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	height: 92px;
	gap: 24px;
}
.bigju-topnav__dateline { display: flex; gap: 18px; align-items: baseline; min-width: 0; flex-wrap: wrap; }
.bigju-topnav__wordmark {
	font-family: var(--bigju-serif);
	font-weight: 400;
	font-size: clamp(18px, 1.6vw, 22px);
	letter-spacing: 0.02em;
	white-space: nowrap;
	text-decoration: none;
	color: var(--bigju-ink);
}
.bigju-topnav__wordmark em { font-style: italic; font-weight: 300; }

/* Logo image dans la nav */
.bigju-topnav__logo {
	display: inline-flex;
	align-items: center;
	line-height: 0;
	text-decoration: none;
}
.bigju-topnav__logo img {
	height: clamp(52px, 5.5vw, 72px);
	width: auto;
	max-width: 260px;
	display: block;
	object-fit: contain;
}

/* Logo image dans le footer */
.bigju-footer__logo {
	display: inline-block;
	line-height: 0;
}
.bigju-footer__logo img {
	height: 64px;
	width: auto;
	max-width: 240px;
	display: block;
	object-fit: contain;
}

.bigju-topnav__nav {
	display: flex;
	justify-content: flex-end;
	gap: clamp(14px, 2vw, 28px);
	align-items: center !important;
	min-height: 36px;
}
.bigju-topnav__nav a {
	font-size: 13px;
	color: var(--bigju-muted);
	text-decoration: none;
	border-bottom: 0.5px solid transparent;
	padding-bottom: 2px;
	transition: color 0.2s, border-color 0.2s;
}
.bigju-topnav__nav a:hover,
.bigju-topnav__nav a.is-current {
	color: var(--bigju-ink);
	border-bottom-color: var(--bigju-ink);
}
.bigju-topnav__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 36px;
	font-size: 13px;
	font-weight: 500;
	padding: 0 16px;
	border: 0.5px solid var(--bigju-ink) !important;
	color: var(--bigju-ink) !important;
	background: transparent !important;
	text-decoration: none !important;
	line-height: 1;
	transition: background 0.2s, color 0.2s;
	white-space: nowrap;
}
.bigju-topnav__cta:hover,
.bigju-topnav__cta:focus {
	background: var(--bigju-ink) !important;
	color: var(--bigju-paper) !important;
	border-color: var(--bigju-ink) !important;
}

.bigju-topnav__burger {
	display: none;
	appearance: none;
	border: 0;
	background: transparent;
	width: 32px; height: 32px;
	cursor: pointer;
	justify-self: end;
}
.bigju-topnav__burger span {
	display: block; width: 18px; height: 0.5px;
	background: var(--bigju-ink); margin: 4px auto;
}

.bigju-topnav__mobile {
	display: none;
	border-top: 0.5px solid var(--bigju-rule);
	background: var(--bigju-paper);
}
.bigju-topnav__mobile.is-open { display: block; }
.bigju-topnav__mobile a {
	display: block;
	font-family: var(--bigju-serif);
	font-size: 24px;
	font-weight: 300;
	padding: 14px 0;
	border-bottom: 0.5px solid var(--bigju-rule);
	color: var(--bigju-ink);
	text-decoration: none;
}

@media (max-width: 880px) {
	/* Layout mobile : wordmark à gauche, burger à droite */
	.bigju-topnav__inner {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		grid-template-columns: none !important;
		height: 60px !important;
		gap: 16px;
	}
	/* Cache dateline + nav desktop */
	.bigju-topnav__dateline {
		display: none !important;
	}
	.bigju-topnav__nav,
	.bigju-topnav__nav .wp-block-navigation,
	.bigju-topnav__nav .wp-block-navigation > ul,
	.bigju-topnav__nav .wp-block-navigation__container {
		display: none !important;
	}
	/* Affiche le burger */
	.bigju-topnav__burger {
		display: block !important;
	}
	/* Wordmark légèrement réduit */
	.bigju-topnav__wordmark {
		font-size: 18px !important;
	}
	.bigju-topnav__logo img {
		height: 34px !important;
		max-width: 140px;
	}
}

/* ───────── Gutenberg core/navigation block — éditorial overrides ── */
.bigju-topnav .wp-block-navigation,
.bigju-topnav .wp-block-navigation > ul,
.bigju-topnav .wp-block-navigation__container {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: clamp(14px, 2vw, 28px) !important;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}
.bigju-topnav .wp-block-navigation-item {
	margin: 0;
	padding: 0;
	font-family: var(--bigju-sans);
	font-size: 13px;
}
.bigju-topnav .wp-block-navigation-item__content,
.bigju-topnav .wp-block-navigation-link__content {
	color: var(--bigju-muted);
	text-decoration: none;
	border-bottom: 0.5px solid transparent;
	padding: 0 0 2px;
	transition: color 0.2s, border-color 0.2s;
	white-space: nowrap;
}
.bigju-topnav .wp-block-navigation-item:hover .wp-block-navigation-item__content,
.bigju-topnav .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
	color: var(--bigju-ink);
	border-bottom-color: var(--bigju-ink);
}
.bigju-topnav .wp-block-navigation__submenu-icon { margin-left: 4px; opacity: .6; width: 10px; }

/* Submenu (dropdown éditorial) — overrides agressifs Gutenberg */
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container,
.bigju-topnav .wp-block-navigation-submenu .wp-block-navigation__submenu-container {
	display: block !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	background: var(--bigju-paper) !important;
	border: 0.5px solid var(--bigju-rule) !important;
	border-radius: 0 !important;
	min-width: 260px;
	padding: 6px 0 !important;
	margin: 8px 0 0 0 !important;
	box-shadow: 0 18px 40px -20px rgba(14,14,12,.18);
	list-style: none !important;
	text-align: left !important;
}
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container > li,
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item {
	display: block !important;
	width: 100% !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	text-align: left !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
}
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container > li > a,
.bigju-topnav .wp-block-navigation-submenu .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: block !important;
	flex-grow: 0 !important;
	width: 100% !important;
	padding: 11px 20px !important;
	margin: 0 !important;
	border: 0 !important;
	border-bottom: 0 !important;
	color: var(--bigju-ink) !important;
	font-family: var(--bigju-serif) !important;
	font-size: 15px !important;
	font-weight: 300 !important;
	letter-spacing: -0.005em !important;
	line-height: 1.4 !important;
	text-align: left !important;
	text-decoration: none !important;
	white-space: normal !important;
	transition: background .15s, color .15s, padding-left .15s;
}
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__label {
	display: inline !important;
	text-align: left !important;
	width: auto !important;
	margin: 0 !important;
}
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.bigju-topnav .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
	background: rgba(14,14,12,.04) !important;
	color: var(--bigju-accent) !important;
	padding-left: 26px !important;
	border-bottom: 0 !important;
}

/* Mobile : laisser le menu mobile s'afficher en colonne */
.bigju-topnav__mobile .wp-block-navigation,
.bigju-topnav__mobile .wp-block-navigation > ul,
.bigju-topnav__mobile .wp-block-navigation__container {
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;
}
.bigju-topnav__mobile .wp-block-navigation-item__content {
	font-family: var(--bigju-serif);
	font-size: 24px;
	font-weight: 300;
	padding: 14px 0;
	border-bottom: 0.5px solid var(--bigju-rule);
	width: 100%;
	color: var(--bigju-ink);
}

/* ───────── Reveal-on-scroll animation ── */
.bigju-reveal {
	opacity: 0;
	transform: translateY(14px);
	transition: opacity 0.9s ease, transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.bigju-reveal.is-in {
	opacity: 1;
	transform: none;
}
@media (prefers-reduced-motion: reduce) {
	.bigju-reveal { opacity: 1; transform: none; transition: none; }
}

/* ───────── Reading progress bar (single article) ── */
.bigju-progress {
	position: fixed;
	top: 0; left: 0; right: 0;
	height: 2px; z-index: 60;
	pointer-events: none;
}
.bigju-progress__bar {
	height: 100%;
	width: 0%;
	background: var(--bigju-accent);
	transition: width 0.1s linear;
}

/* ───────── Article body (single post) prose ── */
.bigju-prose p {
	font-family: var(--bigju-serif);
	font-weight: 400;
	font-size: clamp(17px, 1.3vw, 19px);
	line-height: 1.75;
	margin: 0 0 22px;
	color: var(--bigju-ink);
}
.bigju-prose p strong { font-weight: 500; }
.bigju-prose p em { font-style: italic; }
.bigju-prose h2 {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(28px, 3vw, 40px);
	letter-spacing: -0.02em;
	line-height: 1.1;
	margin: 56px 0 20px;
	text-wrap: balance;
}
.bigju-prose h3 {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(22px, 2vw, 28px);
	letter-spacing: -0.015em;
	line-height: 1.2;
	margin: 40px 0 16px;
}
.bigju-prose blockquote {
	margin: 32px 0;
	font-family: var(--bigju-serif);
	font-style: italic;
	font-weight: 300;
	font-size: clamp(22px, 2vw, 28px);
	line-height: 1.4;
	border-top: 0.5px solid var(--bigju-rule);
	border-bottom: 0.5px solid var(--bigju-rule);
	padding: 24px 0;
}
.bigju-prose ul, .bigju-prose ol {
	font-family: var(--bigju-serif);
	font-size: clamp(17px, 1.3vw, 19px);
	line-height: 1.75;
	padding-left: 1.4em;
}
.bigju-prose ul li, .bigju-prose ol li { margin-bottom: 8px; }
.bigju-prose a {
	color: inherit;
	border-bottom: 0.5px solid currentColor;
	padding-bottom: 1px;
}
.bigju-prose a:hover { color: var(--bigju-accent); border-bottom-color: var(--bigju-accent); }
.bigju-prose hr { border: 0; border-top: 0.5px solid var(--bigju-rule); margin: 56px 0 32px; }

/* Drop cap éditorial pour le 1er paragraphe d'un article */
.bigju-prose > p:first-of-type::first-letter,
.bigju-prose .has-drop-cap::first-letter {
	font-family: var(--bigju-serif);
	font-weight: 500;
	font-size: 4.4em;
	float: left;
	line-height: 0.85;
	padding-top: 6px;
	padding-right: 8px;
	color: var(--bigju-accent);
}

/* ───────── Lede italic intro paragraph ── */
.bigju-prose__intro {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-style: italic;
	font-size: clamp(20px, 2vw, 28px);
	line-height: 1.45;
	margin: 0 0 40px;
	color: var(--bigju-ink);
	text-wrap: balance;
}

/* ───────── Pull quote (large) ── */
.bigju-pullquote {
	margin: 0 0 80px;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-style: italic;
	font-size: clamp(28px, 4vw, 56px);
	line-height: 1.18;
	letter-spacing: -0.022em;
	text-wrap: balance;
	max-width: 24ch;
	border-top: 0.5px solid var(--bigju-rule);
	border-bottom: 0.5px solid var(--bigju-rule);
	padding: clamp(40px, 6vw, 80px) 0;
}
.bigju-pullquote footer {
	margin-top: 24px;
	font-family: var(--bigju-sans);
	font-style: normal;
	font-size: 13px;
	color: var(--bigju-muted);
	display: flex;
	gap: 14px;
	align-items: center;
}
.bigju-pullquote footer::before {
	content: "";
	width: 24px;
	height: 0.5px;
	background: var(--bigju-ink);
	display: inline-block;
}

/* ───────── Dark band (Pro CTA, Newsletter) ── */
.bigju-band-dark {
	background: var(--bigju-ink);
	color: var(--bigju-paper);
	margin: 40px 0;
	padding: clamp(60px, 9vw, 140px) 0;
}
.bigju-band-dark .bigju-eyebrow,
.bigju-band-dark .bigju-rule,
.bigju-band-dark .bigju-section-head { color: rgba(255,255,255,0.6); border-color: rgba(255,255,255,0.2); }
.bigju-band-dark .bigju-stat__k { color: rgba(255,255,255,0.55) !important; }
.bigju-band-dark .bigju-stat__v { color: var(--bigju-paper) !important; }
.bigju-band-dark .bigju-cite__role,
.bigju-band-dark .bigju-cite__name { color: rgba(255,255,255,0.85) !important; }
.bigju-band-dark .bigju-section-head__title,
.bigju-band-dark .bigju-section-head__lede { color: var(--bigju-paper) !important; }

/* ───────── Product table (catalogue) ── */
.bigju-prod-row {
	display: grid;
	grid-template-columns: 40px minmax(0, 2fr) minmax(0, 2fr) 90px 100px 24px;
	gap: clamp(12px, 2vw, 28px);
	align-items: baseline;
	padding: 22px 0;
	border-top: 0.5px solid var(--bigju-rule);
	cursor: pointer;
	transition: background 0.2s, padding 0.2s;
	color: inherit;
	text-decoration: none;
}
.bigju-prod-row:hover {
	background: rgba(14,14,12,0.025);
	padding-left: 12px;
}
.bigju-prod-row__ref { font-family: var(--bigju-serif); font-style: italic; font-size: 14px; color: var(--bigju-muted); }
.bigju-prod-row__name { font-family: var(--bigju-serif); font-size: clamp(20px, 1.8vw, 26px); font-weight: 300; letter-spacing: -0.01em; }
.bigju-prod-row__spec { font-size: 13px; color: var(--bigju-muted); line-height: 1.5; }
.bigju-prod-row__num  { font-size: 12px; color: var(--bigju-muted); text-align: right; font-variant-numeric: tabular-nums; }
.bigju-prod-row__price{ font-size: 13px; text-align: right; }
.bigju-prod-row__arrow{ text-align: right; color: var(--bigju-muted); }
@media (max-width: 760px) {
	.bigju-prod-row { grid-template-columns: 1fr; gap: 6px; padding: 18px 0; }
	.bigju-prod-row__num, .bigju-prod-row__price, .bigju-prod-row__arrow { text-align: left; }
}

/* ───────── Step row (process en N étapes) ── */
.bigju-step-row {
	display: grid;
	grid-template-columns: 80px minmax(0, 3fr) minmax(0, 5fr) 100px;
	gap: clamp(16px, 3vw, 40px);
	align-items: baseline;
	padding: clamp(24px, 4vw, 40px) 0;
	border-top: 0.5px solid var(--bigju-rule);
}
.bigju-step-row__num   { font-family: var(--bigju-serif); font-style: italic; font-size: clamp(20px, 1.8vw, 26px); color: var(--bigju-muted); }
.bigju-step-row__title { margin: 0; font-family: var(--bigju-serif); font-weight: 300; font-size: clamp(24px, 2.6vw, 38px); letter-spacing: -0.015em; line-height: 1.05; }
.bigju-step-row__desc  { margin: 0; font-size: 15px; line-height: 1.6; color: var(--bigju-muted); max-width: 56ch; }
.bigju-step-row__dur   { text-align: right; font-size: 12px; letter-spacing: 0.06em; color: var(--bigju-accent); text-transform: uppercase; font-variant-numeric: tabular-nums; }
@media (max-width: 760px) {
	.bigju-step-row { grid-template-columns: 60px 1fr; }
	.bigju-step-row__desc, .bigju-step-row__dur { grid-column: 2; }
}

/* ───────── Card hovers (pillars, journal) ── */
.bigju-card { transition: opacity 0.3s; cursor: pointer; }
.bigju-card:hover { opacity: 0.82; }
.bigju-card:hover .bigju-card__title,
.bigju-card:hover h3,
.bigju-card:hover h4 { font-style: italic; }

/* ───────── Quote citation ── */
.bigju-cite {
	display: flex;
	gap: 14px;
	align-items: center;
	margin-top: 32px;
}
.bigju-cite::before {
	content: "";
	width: 36px;
	height: 0.5px;
	background: var(--bigju-ink);
	display: inline-block;
}
.bigju-cite__name { font-weight: 500; }
.bigju-cite__role { color: var(--bigju-muted); }

/* ───────── Form fields (contact) ── */
.bigju-form { display: flex; flex-direction: column; gap: 0; }
.bigju-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 14px 0;
}
.bigju-field--full { grid-column: 1 / -1; }
.bigju-field label {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bigju-muted);
	font-family: var(--bigju-sans);
}
.bigju-field label .req { color: var(--bigju-accent); margin-left: 4px; }
.bigju-field input,
.bigju-field select,
.bigju-field textarea {
	appearance: none;
	-webkit-appearance: none;
	background: transparent;
	border: 0;
	border-bottom: 0.5px solid var(--bigju-rule);
	padding: 8px 0;
	outline: none;
	font-family: var(--bigju-serif);
	font-size: clamp(17px, 1.3vw, 20px);
	color: var(--bigju-ink);
	width: 100%;
	transition: border-color 0.2s;
}
.bigju-field textarea { resize: vertical; min-height: 120px; line-height: 1.5; }
.bigju-field input:focus,
.bigju-field select:focus,
.bigju-field textarea:focus { border-bottom-color: var(--bigju-ink); }

.bigju-form__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 32px;
	row-gap: 8px;
}
@media (max-width: 760px) { .bigju-form__grid { grid-template-columns: 1fr; } }

.bigju-form__consent {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 12px;
	color: var(--bigju-muted);
	max-width: 42ch;
	cursor: pointer;
	font-family: var(--bigju-sans);
}
.bigju-form__consent input { margin-top: 3px; accent-color: var(--bigju-accent); }
.bigju-form__submit {
	appearance: none;
	background: var(--bigju-ink);
	color: var(--bigju-paper);
	border: 0;
	padding: 18px 36px;
	cursor: pointer;
	font-size: 13px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	transition: background 0.2s;
	font-family: var(--bigju-sans);
}
.bigju-form__submit:hover { background: var(--bigju-accent); }

/* ───────── Audience switcher (Pro / Particulier / Presse) ── */
.bigju-audience {
	display: flex;
	border-bottom: 0.5px solid var(--bigju-rule);
	margin-bottom: 32px;
}
.bigju-audience input { position: absolute; opacity: 0; pointer-events: none; }
.bigju-audience label {
	flex: 1;
	cursor: pointer;
	padding: 16px 0;
	border-bottom: 0.5px solid transparent;
	margin-bottom: -0.5px;
	color: var(--bigju-muted);
	transition: color 0.2s, border-color 0.2s;
	display: block;
}
.bigju-audience label .l {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(20px, 1.8vw, 24px);
	margin-bottom: 4px;
	display: block;
}
.bigju-audience label .s {
	font-size: 11px;
	color: var(--bigju-muted);
	letter-spacing: 0.06em;
	display: block;
}
.bigju-audience input:checked + label {
	color: var(--bigju-ink);
	border-bottom-color: var(--bigju-ink);
}
.bigju-audience input:checked + label .l { font-style: italic; }

/* ───────── Footer ── */
.bigju-footer {
	margin-top: 120px;
	padding: 64px 0 48px;
	border-top: 0.5px solid var(--bigju-rule);
}
.bigju-footer__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: clamp(28px, 4vw, 72px);
	margin-bottom: 64px;
}
.bigju-footer__wordmark {
	font-family: var(--bigju-serif);
	font-size: 28px;
	font-weight: 300;
	letter-spacing: 0.01em;
	margin-bottom: 14px;
}
.bigju-footer__wordmark em { font-style: italic; }
.bigju-footer__title {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bigju-muted);
	margin-bottom: 14px;
}
.bigju-footer__list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	font-size: 14px;
	list-style: none;
	padding: 0;
	margin: 0;
}
.bigju-footer__list a { color: var(--bigju-ink); text-decoration: none; }
.bigju-footer__list a:hover { color: var(--bigju-accent); }
.bigju-footer__legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 16px;
	padding-top: 24px;
	font-size: 12px;
	color: var(--bigju-muted);
}
.bigju-footer__legal a { color: inherit; text-decoration: none; }
.bigju-footer__legal a:hover { color: var(--bigju-ink); }

/* ───────── Avatar (article author) ── */
.bigju-avatar {
	width: 38px; height: 38px;
	border-radius: 50%;
	background: var(--bigju-ink);
	color: var(--bigju-paper);
	display: flex; align-items: center; justify-content: center;
	font-family: var(--bigju-serif);
	font-style: italic;
	font-size: 16px;
}
.bigju-avatar--lg { width: 48px; height: 48px; font-size: 18px; }

/* ───────── Featured image caption (figcaption éditorial) ── */
figure figcaption {
	margin-top: 10px;
	font-family: var(--bigju-serif);
	font-style: italic;
	font-size: 13px;
	line-height: 1.5;
	color: var(--bigju-muted);
}

/* ───────── Stats / KPI block (MOQ, Cotation, etc.) ── */
.bigju-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: clamp(16px, 2vw, 28px);
}
.bigju-stat { border-top: 0.5px solid var(--bigju-rule); padding-top: 14px; }
.bigju-band-dark .bigju-stat { border-top-color: rgba(255,255,255,0.2); }
.bigju-stat__k {
	font-size: 10px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bigju-muted);
	margin-bottom: 8px;
}
.bigju-stat__v {
	font-family: var(--bigju-serif);
	font-size: clamp(22px, 2.2vw, 30px);
	font-weight: 300;
}

/* ───────── Reassurance band (4 cards horizontales) ── */
.bigju-reassurance {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: clamp(20px, 3vw, 48px);
}
.bigju-reassurance__item {
	border-top: 0.5px solid var(--bigju-ink);
	padding-top: 18px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.bigju-reassurance__title {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(22px, 2vw, 28px);
	letter-spacing: -0.015em;
}
.bigju-reassurance__desc {
	margin: 4px 0 0;
	font-size: 13px;
	color: var(--bigju-muted);
	line-height: 1.55;
}

/* ───────── Newsletter strip ── */
.bigju-newsletter input {
	flex: 1;
	background: transparent;
	border: 0;
	color: var(--bigju-paper);
	padding: 14px 0;
	outline: none;
	font-family: var(--bigju-serif);
	font-style: italic;
	font-size: 18px;
}
.bigju-newsletter button {
	appearance: none;
	background: transparent;
	color: var(--bigju-paper);
	border: 0;
	padding: 14px 6px;
	cursor: pointer;
	font-size: 13px;
	letter-spacing: 0.06em;
}
.bigju-newsletter__row {
	display: flex;
	border-bottom: 0.5px solid rgba(255,255,255,0.5);
}
.bigju-newsletter__hint {
	font-size: 11px;
	color: rgba(255,255,255,0.5);
	margin-top: 8px;
}

/* ───────── Plate (image placeholder éditorial) ── */
/* Affichage d'une image classique avec ratio + grain optionnel via filter */
.bigju-plate { position: relative; overflow: hidden; }
.bigju-plate--hero    { aspect-ratio: 21/9; }
.bigju-plate--feature { aspect-ratio: 3/2; }
.bigju-plate--portrait{ aspect-ratio: 4/5; }
.bigju-plate--3-4     { aspect-ratio: 3/4; }
.bigju-plate--4-3     { aspect-ratio: 4/3; }
.bigju-plate img { width: 100%; height: 100%; object-fit: cover; }
.bigju-plate--treat-noir img { filter: grayscale(1) contrast(1.05); }
.bigju-plate--treat-sepia img { filter: sepia(0.6) contrast(1.05); }

.bigju-plate__label {
	position: absolute;
	left: 14px;
	bottom: 12px;
	font-family: var(--bigju-sans);
	font-size: 10px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(233,227,214,0.7);
	z-index: 2;
}

/* Fallback when no image: dark gradient + svg pattern (subtle, editorial) */
.bigju-plate--empty {
	background:
		radial-gradient(ellipse at 35% 30%, rgba(255,255,255,.08), rgba(0,0,0,.55) 70%),
		linear-gradient(180deg, #1a1816, #0E0E0C);
}

/* ───────── Layout helpers ── */
.bigju-grid-12 {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: clamp(16px, 2.4vw, 32px);
}
@media (max-width: 880px) {
	.bigju-grid-12 > [class*="bigju-col-"] { grid-column: span 12 !important; }
}
.bigju-col-3  { grid-column: span 3; }
.bigju-col-4  { grid-column: span 4; }
.bigju-col-5  { grid-column: span 5; }
.bigju-col-6  { grid-column: span 6; }
.bigju-col-7  { grid-column: span 7; }
.bigju-col-8  { grid-column: span 8; }
.bigju-col-12 { grid-column: span 12; }

/* WP block alignments compat */
.alignwide { max-width: 1320px; margin-left: auto; margin-right: auto; }
.alignfull { width: 100%; }

/* Hide on small screens */
@media (max-width: 760px) {
	.bigju-hide-sm { display: none !important; }
}

/* ───────── Mini-CMP (bandeau cookies éditorial) ── */
.bigju-cmp {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
	background: var(--bigju-paper);
	border-top: 0.5px solid var(--bigju-rule);
	box-shadow: 0 -8px 32px -16px rgba(14,14,12,.18);
	padding: clamp(16px, 2vw, 24px) clamp(16px, 4vw, 48px);
}
.bigju-cmp__inner {
	max-width: 1320px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(16px, 3vw, 40px);
	align-items: center;
}
.bigju-cmp__text strong {
	display: block;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-style: italic;
	font-size: clamp(15px, 1.2vw, 17px);
	color: var(--bigju-ink);
	margin-bottom: 4px;
}
.bigju-cmp__text p {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--bigju-muted);
	max-width: 64ch;
}
.bigju-cmp__text a {
	color: var(--bigju-ink);
	border-bottom: 0.5px solid var(--bigju-ink);
	padding-bottom: 1px;
	text-decoration: none;
}
.bigju-cmp__text a:hover { color: var(--bigju-accent); border-bottom-color: var(--bigju-accent); }
.bigju-cmp__actions {
	display: flex;
	gap: 10px;
	flex-shrink: 0;
}
.bigju-cmp__btn {
	appearance: none;
	font-family: var(--bigju-sans);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	padding: 12px 20px;
	cursor: pointer;
	border: 0.5px solid var(--bigju-ink);
	background: transparent;
	color: var(--bigju-ink);
	transition: background 0.2s, color 0.2s;
	white-space: nowrap;
}
.bigju-cmp__btn:hover { background: var(--bigju-ink); color: var(--bigju-paper); }
.bigju-cmp__btn--accept {
	background: var(--bigju-ink);
	color: var(--bigju-paper);
}
.bigju-cmp__btn--accept:hover { background: var(--bigju-accent); border-color: var(--bigju-accent); }
@media (max-width: 760px) {
	.bigju-cmp__inner { grid-template-columns: 1fr; }
	.bigju-cmp__actions { width: 100%; }
	.bigju-cmp__btn { flex: 1; }
}

/* Trigger discret en bas à gauche pour rouvrir le bandeau (post-choix) */
.bigju-cmp-trigger {
	position: fixed;
	left: 16px;
	bottom: 16px;
	z-index: 90;
	appearance: none;
	background: var(--bigju-paper);
	border: 0.5px solid var(--bigju-rule);
	padding: 8px 14px;
	font-family: var(--bigju-sans);
	font-size: 11px;
	letter-spacing: 0.06em;
	color: var(--bigju-muted);
	cursor: pointer;
	transition: color 0.2s, background 0.2s;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.bigju-cmp-trigger:hover { color: var(--bigju-ink); background: var(--bigju-paper); }
.bigju-cmp-trigger__label { font-size: 11px; }
@media (max-width: 760px) {
	.bigju-cmp-trigger { padding: 6px 10px; }
	.bigju-cmp-trigger__label { display: none; }
}

/* ───────── GTranslate — repositionnement mobile ──
   Le widget est en position fixed top-right par défaut → conflit avec le burger.
   En mobile, on le déplace en bas à droite + on le compacte.
*/
@media (max-width: 880px) {
	.gtranslate_wrapper,
	.gt_float_switcher,
	div[id^="gt-wrapper-"] {
		top: auto !important;
		bottom: 16px !important;
		right: 16px !important;
		left: auto !important;
		width: auto !important;
		max-width: 140px;
		z-index: 80 !important;
	}
	/* Si le CMP est visible, on remonte le switcher pour ne pas qu'il soit caché par le bandeau */
	body:has(#bigju-cmp:not([hidden])) .gtranslate_wrapper,
	body:has(#bigju-cmp:not([hidden])) .gt_float_switcher,
	body:has(#bigju-cmp:not([hidden])) div[id^="gt-wrapper-"] {
		bottom: 180px !important;
	}
}

/* ───────── Savoir-faire (sous-pages) — variations couleur ──
   Chaque sous-page redéfinit l'accent ambre par une teinte qui colore
   les <em>, les hover, les chips, etc. Le reste de la charte ne change pas.
*/
body.bigju-variant-vert      { --bigju-accent: #4F6B3D; } /* vert mousse — Plantation */
body.bigju-variant-ambre     { --bigju-accent: #A8631F; } /* ambre — Vanille noire */
body.bigju-variant-sepia     { --bigju-accent: #8C5A2D; } /* sépia — Triage */
body.bigju-variant-terre     { --bigju-accent: #6B4423; } /* terre — Magasins */
body.bigju-variant-ardoise   { --bigju-accent: #2E4A52; } /* ardoise — Export */

/* Step rows du hub savoir-faire — grandes lignes éditoriales cliquables */
.bigju-sf-steps {
	display: flex;
	flex-direction: column;
}
.bigju-sf-step-row {
	display: grid;
	grid-template-columns: 80px minmax(0, 5fr) minmax(0, 2fr);
	gap: clamp(20px, 3vw, 48px);
	align-items: baseline;
	padding: clamp(28px, 4vw, 44px) 0;
	border-top: 0.5px solid var(--bigju-rule);
	color: var(--bigju-ink);
	text-decoration: none;
	transition: background 0.2s, padding 0.2s, opacity .2s;
}
.bigju-sf-step-row:hover {
	background: rgba(14,14,12,.025);
	padding-left: 12px;
}
.bigju-sf-step-row:hover .bigju-sf-step-row__title {
	font-style: italic;
	color: var(--bigju-accent);
}
.bigju-sf-step-row__num {
	font-family: var(--bigju-serif);
	font-style: italic;
	font-size: clamp(28px, 2.6vw, 40px);
	color: var(--bigju-muted);
	font-weight: 300;
}
.bigju-sf-step-row__main {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.bigju-sf-step-row__title {
	margin: 0;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(28px, 3vw, 44px);
	letter-spacing: -0.018em;
	line-height: 1.05;
	transition: color .2s, font-style .2s;
}
.bigju-sf-step-row__lede {
	margin: 0;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(15px, 1.2vw, 18px);
	line-height: 1.5;
	color: var(--bigju-muted);
	max-width: 56ch;
}
.bigju-sf-step-row__meta {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 8px;
	text-align: right;
}
.bigju-sf-step-row__dur {
	font-size: 12px;
	letter-spacing: 0.06em;
	color: var(--bigju-accent);
	text-transform: uppercase;
	font-variant-numeric: tabular-nums;
}
.bigju-sf-step-row__arrow {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bigju-muted);
}
@media (max-width: 760px) {
	.bigju-sf-step-row {
		grid-template-columns: 60px 1fr;
		gap: 16px;
	}
	.bigju-sf-step-row__meta {
		grid-column: 2;
		align-items: flex-start;
		text-align: left;
		margin-top: 6px;
	}
}

/* ───────── Hero — fond carte ancienne Madagascar (full-width) ──
   La carte couvre TOUTE la largeur du viewport (déborde du bigju-page max 1320px)
   tout en restant contenue à la hauteur du hero seul.
   Trick CSS classique : left: calc(-50vw + 50%) + width: 100vw.
*/
.bigju-hero {
	position: relative;
	isolation: isolate;
}
.bigju-hero::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(-50vw + 50%);
	width: 100vw;
	background-image: url('../img/map-madagascar-1839.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0.05;
	mix-blend-mode: multiply;
	filter: sepia(0.4) saturate(0.65) contrast(1.05);
	pointer-events: none;
	z-index: -1;
}
@media (max-width: 880px) {
	.bigju-hero::before {
		opacity: 0.04;
	}
}

/* ───────── LP Ville — USP grid 4 colonnes ── */
.bigju-lp-usp {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(20px, 3vw, 40px);
}
.bigju-lp-usp__item {
	border-top: 0.5px solid var(--bigju-ink);
	padding-top: 18px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.bigju-lp-usp__v {
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(28px, 3vw, 44px);
	letter-spacing: -0.02em;
	line-height: 1.05;
	color: var(--bigju-ink);
	font-variation-settings: "opsz" 96;
}
.bigju-lp-usp__d {
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--bigju-muted);
}
@media (max-width: 880px) { .bigju-lp-usp { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .bigju-lp-usp { grid-template-columns: 1fr; } }

/* ───────── Home — Témoignages 3 colonnes (sous le pull quote) ── */
.bigju-home-testimonials {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(24px, 3vw, 56px);
	border-top: 0.5px solid var(--bigju-rule);
	padding-top: clamp(40px, 5vw, 64px);
}
.bigju-home-testimonial {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.bigju-home-testimonial__quote {
	margin: 0;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-style: italic;
	font-size: clamp(17px, 1.5vw, 21px);
	line-height: 1.45;
	color: var(--bigju-ink);
	max-width: 32ch;
	text-wrap: balance;
}
@media (max-width: 880px) { .bigju-home-testimonials { grid-template-columns: 1fr; } }

/* ───────── LP Ville — Témoignages 3 colonnes ── */
.bigju-lp-testimonials {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(24px, 3vw, 56px);
}
.bigju-lp-testimonial {
	display: flex;
	flex-direction: column;
	gap: 24px;
	border-top: 0.5px solid var(--bigju-rule);
	padding-top: 24px;
}
.bigju-lp-testimonial__quote {
	margin: 0;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-style: italic;
	font-size: clamp(18px, 1.6vw, 22px);
	line-height: 1.4;
	color: var(--bigju-ink);
	max-width: 32ch;
}
@media (max-width: 880px) { .bigju-lp-testimonials { grid-template-columns: 1fr; } }

/* ───────── LP Ville — Diagramme livraison 4 étapes ── */
.bigju-lp-delivery {
	display: grid;
	grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
	gap: clamp(16px, 2vw, 32px);
	align-items: stretch;
}
.bigju-lp-delivery__step {
	border-top: 0.5px solid var(--bigju-ink);
	padding-top: 18px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.bigju-lp-delivery__step h4 {
	margin: 8px 0 0;
	font-family: var(--bigju-serif);
	font-weight: 300;
	font-size: clamp(20px, 1.8vw, 26px);
	letter-spacing: -0.015em;
}
.bigju-lp-delivery__step p {
	margin: 4px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--bigju-muted);
}
.bigju-lp-delivery__arrow {
	font-family: var(--bigju-serif);
	font-style: italic;
	font-size: 24px;
	color: var(--bigju-accent);
	display: flex;
	align-items: center;
	padding-top: 18px;
}
@media (max-width: 880px) {
	.bigju-lp-delivery {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.bigju-lp-delivery__arrow {
		display: none;
	}
}

/* ───────── Blog grid (post-template sur /blog/, archive, etc.) ──
   Force le UL post-template à être un grid 2 colonnes éditorial.
*/
.bigju-grid-12 .wp-block-post-template,
.wp-block-post-template.bigju-grid-12,
ul.wp-block-post-template {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr);
	gap: clamp(32px, 4vw, 64px) clamp(24px, 3vw, 48px);
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100%;
}

/* Items de la grille : structure card + hover éditorial */
.wp-block-post-template > li,
.wp-block-post-template > li.wp-block-post {
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 16px;
	transition: opacity .3s;
}
.wp-block-post-template > li:hover { opacity: .85; }
.wp-block-post-template > li:hover .wp-block-post-title { font-style: italic; }

/* Featured image en plate avec ratio 3:2 */
.wp-block-post-template .wp-block-post-featured-image {
	margin: 0 !important;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: #1a1816;
}
.wp-block-post-template .wp-block-post-featured-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}
.wp-block-post-template .wp-block-post-featured-image a { display: block; height: 100%; }

/* Eyebrow row : catégorie + date */
.wp-block-post-template .wp-block-post-terms,
.wp-block-post-template .wp-block-post-date {
	font-family: var(--bigju-sans) !important;
	font-size: 11px !important;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--bigju-muted) !important;
	margin: 0 !important;
}
.wp-block-post-template .wp-block-post-terms a {
	color: inherit !important;
	text-decoration: none !important;
	border: 0 !important;
}

/* Title */
.wp-block-post-template .wp-block-post-title {
	font-family: var(--bigju-serif) !important;
	font-weight: 300 !important;
	font-size: clamp(22px, 2.2vw, 30px) !important;
	line-height: 1.15 !important;
	letter-spacing: -0.015em !important;
	margin: 0 !important;
	text-wrap: balance;
}
.wp-block-post-template .wp-block-post-title a {
	color: var(--bigju-ink) !important;
	text-decoration: none !important;
	border: 0 !important;
}

/* Asymmetric editorial — 1ère card en feature pleine largeur */
.wp-block-post-template > li:nth-child(1) {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
	gap: clamp(24px, 3vw, 48px);
	align-items: center;
}
.wp-block-post-template > li:nth-child(1) .wp-block-post-featured-image {
	aspect-ratio: 3 / 2 !important;
	grid-column: 1;
	grid-row: 1 / span 3;
	margin: 0 !important;
}
.wp-block-post-template > li:nth-child(1) > div.wp-block-group {
	grid-column: 2;
}
.wp-block-post-template > li:nth-child(1) .wp-block-post-title {
	grid-column: 2;
	font-size: clamp(28px, 3.4vw, 44px) !important;
	max-width: 18ch;
	margin: 0 !important;
}
@media (max-width: 760px) {
	.wp-block-post-template > li:nth-child(1) {
		grid-template-columns: 1fr;
	}
	.wp-block-post-template > li:nth-child(1) .wp-block-post-featured-image,
	.wp-block-post-template > li:nth-child(1) > div.wp-block-group,
	.wp-block-post-template > li:nth-child(1) .wp-block-post-title {
		grid-column: 1;
		grid-row: auto;
	}
}

/* Mobile : 1 colonne */
@media (max-width: 760px) {
	.bigju-grid-12 .wp-block-post-template,
	ul.wp-block-post-template {
		grid-template-columns: 1fr !important;
	}
	.wp-block-post-template > li:nth-child(1) {
		grid-column: auto;
	}
}

/* Pagination */
.wp-block-query-pagination {
	grid-column: 1 / -1;
	margin-top: clamp(40px, 6vw, 80px) !important;
	display: flex !important;
	justify-content: center;
	gap: 24px;
	font-family: var(--bigju-sans);
	font-size: 13px;
	letter-spacing: .04em;
}
.wp-block-query-pagination a {
	color: var(--bigju-ink) !important;
	border-bottom: .5px solid currentColor;
	padding-bottom: 2px;
}
.wp-block-query-pagination .current {
	font-weight: 500;
	color: var(--bigju-accent);
}

/* ───────── CTA inline (dans articles/blog) ──
   Bloc compact à l'intérieur du contenu : message court + bouton.
   Variante --accent : fond ambre pour le CTA acheter.
*/
.bigju-cta-inline {
	margin: 40px 0 !important;
	padding: clamp(20px, 3vw, 32px) clamp(20px, 4vw, 40px) !important;
	background: rgba(14,14,12,0.04);
	border-left: 3px solid var(--bigju-ink);
	display: flex !important;
	flex-direction: column;
	gap: 16px;
	max-width: 100%;
}
.bigju-cta-inline p {
	margin: 0 !important;
	font-family: var(--bigju-serif) !important;
	font-size: clamp(16px, 1.3vw, 19px) !important;
	font-weight: 300 !important;
	line-height: 1.45 !important;
	color: var(--bigju-ink) !important;
	font-style: normal !important;
}
.bigju-cta-inline p strong {
	font-weight: 500;
	font-style: italic;
}
.bigju-cta-inline .wp-block-buttons,
.bigju-cta-inline .wp-block-button {
	margin: 0;
}
.bigju-cta-inline .wp-block-button__link,
.bigju-cta-inline .wp-element-button {
	display: inline-block;
	background: var(--bigju-ink) !important;
	color: var(--bigju-paper) !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 14px 24px !important;
	font-family: var(--bigju-sans) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.04em !important;
	text-decoration: none !important;
	transition: background 0.2s !important;
}
.bigju-cta-inline .wp-block-button__link:hover,
.bigju-cta-inline .wp-element-button:hover {
	background: var(--bigju-accent) !important;
	color: var(--bigju-paper) !important;
}

/* Variante accent (CTA acheter) */
.bigju-cta-inline--accent {
	background: var(--bigju-ink);
	border-left-color: var(--bigju-accent);
	color: var(--bigju-paper);
}
.bigju-cta-inline--accent p {
	color: var(--bigju-paper) !important;
}
.bigju-cta-inline--accent .wp-block-button__link,
.bigju-cta-inline--accent .wp-element-button {
	background: var(--bigju-accent) !important;
	color: var(--bigju-paper) !important;
}
.bigju-cta-inline--accent .wp-block-button__link:hover,
.bigju-cta-inline--accent .wp-element-button:hover {
	background: var(--bigju-paper) !important;
	color: var(--bigju-ink) !important;
}
