/**
 * BETO Services — Front-end Styles
 * Design System : Playfair Display (serif) + Barlow Semi Condensed (sans) + Roboto (ui)
 * Brand: navy #24265b, blue #007fff, red #ce1021, gold #f7d618
 * Emploi = blue universe (S'éduquer)
 */

/* ═══════════════════════════════════════
   VARIABLES & BASE
   ═══════════════════════════════════════ */

:root {
	/* ── Brand Colors ── */
	--navy: #24265b;
	--navy-lt: #2e3170;
	--blue: #007fff;
	--blue-dk: #0066cc;
	--red: #ce1021;
	--red-dk: #a80d1a;
	--gold: #f7d618;
	--gold-dk: #d4b800;
	--gray: #b3b3b3;
	/* ── Universe Colors ── */
	--univ-info: #ce1021;
	--univ-edu: #007fff;
	--univ-insp: #f7d618;
	/* ── UI Tokens ── */
	--txt: #121212;
	--txt-2: #333;
	--txt-3: #666;
	/* A11Y-CONTRAST-01 — #999 échoue WCAG AA (2.85:1). #767676 = 4.54:1 → conforme AA. */
	--muted: #767676;
	--muted-2: rgba(0,0,0,.6);
	--border: #d6d6d6;
	--border-lt: #e9e9e9;
	--bg-lt: #f7f7f7;
	--bg-warm: #faf8f5;
	--bg-dark: #1a1a1a;
	/* ── Fonts ── */
	--serif: 'Playfair Display', Georgia, serif;
	--sans: 'Barlow Semi Condensed', Arial, sans-serif;
	--sans2: 'Barlow', Arial, sans-serif;
	--ui: Roboto, Arial, sans-serif;
	/* ── Layout ── */
	--page: 1152px;
	--body-col: 760px;
	--txt-w: 660px;
	--side-w: 300px;
	--side-gap: 55px;
	/* ── Legacy aliases (Appels d'offres → blue / S'éduquer) ── */
	--accent: var(--blue);
	--accent-dk: var(--blue-dk);
	/* ── Semantic ── */
	--amber: #d97706;
	--green: #16a34a;
	--green-dk: #15803d;
	/* ── Section bar color ── */
	--secbar-color: var(--blue);
	/* ── Other legacy aliases ── */
	--beto-accent: var(--red);
	--beto-accent-hover: var(--red-dk);
	--beto-navy: var(--navy);
	--beto-blue: var(--blue);
	--beto-gold: var(--gold);
	--beto-green: #10b981;
	--beto-amber: #f59e0b;
	--beto-gray-50: #f9fafb;
	--beto-gray-100: #f3f4f6;
	--beto-gray-200: #e5e7eb;
	--beto-gray-300: #d1d5db;
	--beto-gray-400: #9ca3af;
	--beto-gray-500: #6b7280;
	--beto-gray-600: #4b5563;
	--beto-gray-700: #374151;
	--beto-gray-800: #1f2937;
	--beto-gray-900: #111827;
	--beto-radius: 0;
	--beto-radius-lg: 0;
	--beto-radius-xl: 0;
	--beto-shadow: none;
	--beto-shadow-md: 0 4px 12px rgba(0,0,0,.1);
	--beto-shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.05);
	--beto-container: 1152px;
	--beto-font: var(--ui);
	--beto-font-heading: var(--sans);
	--beto-transition: all .2s ease;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

.beto-container {
	max-width: var(--page);
	margin: 0 auto;
	padding: 0 20px;
}

.beto-service {
	font-family: var(--ui);
	color: var(--txt);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.beto-service a { color: inherit; text-decoration: none; }
.beto-service img { display: block; max-width: 100%; }

/* ═══════════════════════════════════════
   SVG ICON SYSTEM
   ═══════════════════════════════════════ */

.beto-icon {
	display: inline-block;
	vertical-align: middle;
	flex-shrink: 0;
	line-height: 1;
}

.beto-icon svg {
	display: block;
	width: 1em;
	height: 1em;
}

/* ═══════════════════════════════════════
   SECBAR + SUB-NAV (section breadcrumb bar)
   ═══════════════════════════════════════ */

.secbar {
	border-top: 3px solid var(--secbar-color);
	border-bottom: 1px solid var(--border-lt);
	max-width: var(--page);
	margin: 0 auto;
	padding: 0 20px;
}

.secbar__in {
	height: 44px;
	display: flex;
	align-items: center;
	gap: 12px;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none; /* Firefox */
}
.secbar__in::-webkit-scrollbar { display: none; /* Chrome/Safari */ }

.secbar__label {
	font: 800 13px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--navy);
	white-space: nowrap;
	flex-shrink: 0;
}

.secbar__chevron {
	width: 5px;
	height: 9px;
	fill: none;
	stroke: var(--muted);
	stroke-width: 1.5;
	flex-shrink: 0;
}

.secbar__type {
	font: 600 13px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--txt-3);
	white-space: nowrap;
	flex-shrink: 0;
}

.secbar__sep {
	width: 1px;
	height: 20px;
	background: var(--border);
	margin: 0 4px;
	flex-shrink: 0;
}

.secbar__links {
	display: flex;
	gap: 0;
	flex-shrink: 1;
	min-width: 0;
	overflow-x: auto;
	scrollbar-width: none;
}
.secbar__links::-webkit-scrollbar { display: none; }

.secbar__links a {
	display: block;
	padding: 0 12px;
	font: 500 .8125rem/44px var(--ui);
	color: var(--txt-3);
	white-space: nowrap;
	transition: color .15s;
	position: relative;
}

.secbar__links a:hover { color: var(--txt); }

.secbar__links a.on {
	color: var(--txt);
	font-weight: 700;
}

.secbar__links a.on::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 12px;
	right: 12px;
	height: 2px;
	background: var(--accent);
}

/* ═══════════════════════════════════════
   SEPARATOR
   ═══════════════════════════════════════ */

.sep-wrap {
	max-width: var(--page);
	margin: 0 auto;
	padding: 0 20px;
}

.sep {
	height: 1px;
	background: var(--border-lt);
	margin: 32px 0;
}
.beto-service--ecouter .sep {
	margin: 36px 0;
}

/* ═══════════════════════════════════════
   READING BAR (sticky on scroll)
   ═══════════════════════════════════════ */

.readbar {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	background: #fff;
	border-bottom: 1px solid var(--border-lt);
	box-shadow: 0 1px 6px rgba(0,0,0,.06);
	transform: translateY(-100%);
	opacity: 0;
	transition: transform .3s cubic-bezier(.4,0,.2,1), opacity .3s;
	pointer-events: none;
}

.readbar.visible {
	transform: translateY(0);
	opacity: 1;
	pointer-events: auto;
}

.readbar__in {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	align-items: center;
	height: 48px;
	gap: 16px;
}

.readbar__logo {
	font: 900 1.5rem/1 var(--ui);
	letter-spacing: -.03em;
	color: var(--navy);
	flex-shrink: 0;
	text-decoration: none;
}

.readbar__logo span { color: var(--red); }

.readbar__sep {
	width: 1px;
	height: 24px;
	background: var(--border-lt);
	flex-shrink: 0;
}

.readbar__rubrique {
	font: 700 .75rem/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--blue);
	flex-shrink: 0;
	white-space: nowrap;
}

.readbar__title {
	font: 600 .875rem/1.2 var(--ui);
	color: var(--txt);
	flex: 1;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.readbar__share {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

.readbar__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	background: none;
	border: none;
	color: var(--txt-3);
	padding: 0;
	transition: color .15s;
	cursor: pointer;
}

.readbar__btn svg { width: 18px; height: 18px; }
.readbar__btn:hover { color: var(--blue); }

.readbar__progress {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 2px;
	background: var(--blue);
	width: 0;
	transition: width .1s linear;
}

/* ═══════════════════════════════════════
   JOB HEAD (company logo + title + metadata)
   ═══════════════════════════════════════ */

.jhead {
	max-width: var(--page);
	margin: 0 auto;
	padding: 40px 20px 0;
}

.jhead__badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--blue);
	color: #fff;
	font: 600 11px/1.2 var(--sans);
	text-transform: uppercase;
	letter-spacing: .04em;
	padding: 6px 10px;
	margin-bottom: 16px;
}

.jhead__badges {
	display: flex;
	gap: 8px;
	margin-bottom: 16px;
	flex-wrap: wrap;
}

.jhead__badge--outline {
	background: transparent;
	color: var(--txt-3);
	border: 1px solid var(--border);
}

.jhead__badge--green { background: var(--beto-green); }
.jhead__badge--muted { background: var(--muted); }

.jhead__header {
	display: flex;
	gap: 24px;
	margin-bottom: 32px;
}

.jhead__logo {
	width: 80px;
	height: 80px;
	background: var(--bg-lt);
	border: 1px solid var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--muted);
	font: 700 14px/1 var(--sans);
	flex-shrink: 0;
	overflow: hidden;
}

.jhead__logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.jhead__logo--placeholder {
	color: var(--muted);
}

.jhead__info { flex: 1; }

.jhead__title {
	font: 700 2.5rem/1.15 var(--serif);
	color: var(--txt);
	letter-spacing: -.02em;
	margin: 0 0 12px;
}

.jhead__company {
	font: 600 15px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
	letter-spacing: .03em;
	margin: 0 0 12px;
	display: flex;
	align-items: center;
	gap: 6px;
}

.jhead__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 16px;
}

.jhead__tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--bg-lt);
	padding: 8px 12px;
	font: 500 12px/1 var(--sans);
	color: var(--txt-3);
}

.jhead__tag svg,
.jhead__tag .beto-icon {
	width: 14px;
	height: 14px;
	color: var(--muted);
	flex-shrink: 0;
}

.jhead__deadline {
	display: flex;
	align-items: center;
	gap: 8px;
	background: #fff3cd;
	padding: 12px 16px;
	border-left: 3px solid var(--gold);
	margin-bottom: 24px;
}

.jhead__deadline-label {
	font: 600 12px/1 var(--sans);
	text-transform: uppercase;
	color: #856404;
}

.jhead__deadline-value {
	font: 700 14px/1 var(--serif);
	color: #856404;
}

.jhead__deadline--expired {
	background: #fef2f2;
	border-left-color: var(--red);
}

.jhead__deadline--expired .jhead__deadline-label,
.jhead__deadline--expired .jhead__deadline-value {
	color: var(--red);
}

/* ═══════════════════════════════════════
   JOB BODY (single column, centered, no sidebar)
   ═══════════════════════════════════════ */

.jbody {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 32px 20px 0;
}

/* ── Section heading ── */
.jsection {
	margin: 40px 0 24px;
}

.jsection__title {
	font: 700 1.5rem/1.2 var(--serif);
	color: var(--txt);
	margin-bottom: 16px;
	position: relative;
	padding-bottom: 12px;
}

.jsection__title::after {
	content: '';
	display: block;
	width: 40px;
	height: 3px;
	background: var(--blue);
	margin-top: 8px;
}

/* ── Paragraph text ── */
.jbody p {
	font: 400 1.125rem/1.6 var(--serif);
	color: var(--txt-2);
	margin-bottom: 16px;
	letter-spacing: -.01px;
}

.jbody p a {
	color: var(--txt-2);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.jbody p a:hover { color: var(--blue); }
.jbody p strong { font-weight: 700; }

/* ── List items (checkmarks style) ── */
.jlist {
	list-style: none;
	margin: 16px 0;
	padding: 0;
}

.jlist li {
	font: 400 1rem/1.6 var(--ui);
	color: var(--txt-2);
	margin-bottom: 12px;
	padding-left: 28px;
	position: relative;
}

.jlist li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 0;
	color: var(--blue);
	font-weight: 700;
	font-size: 18px;
}

/* ── Benefits list ── */
.jbenefits {
	list-style: none;
	margin: 16px 0;
	padding: 0;
}

.jbenefits li {
	font: 400 1rem/1.6 var(--ui);
	color: var(--txt-2);
	margin-bottom: 10px;
	padding-left: 28px;
	position: relative;
}

.jbenefits li::before {
	content: '\2022';
	position: absolute;
	left: 8px;
	top: -2px;
	color: var(--blue);
	font-size: 20px;
}

/* ── Competences tags ── */
.jcomp {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 16px 0;
}

.jcomp__tag {
	display: inline-block;
	padding: 6px 14px;
	background: var(--bg-lt);
	color: var(--txt-2);
	font: 500 14px/1 var(--sans);
	transition: all .15s;
}

.jcomp__tag:hover {
	background: var(--blue);
	color: #fff;
}

/* ── Application button ── */
.beto-service .japply-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 32px;
	background: var(--blue);
	color: #fff;
	font: 700 14px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .04em;
	border: none;
	margin: 24px 0;
	cursor: pointer;
	transition: background .2s;
	text-decoration: none;
}

.beto-service .japply-btn:hover { background: var(--blue-dk); color: #fff; }

.beto-service .japply-btn svg,
.beto-service .japply-btn .beto-icon {
	width: 16px;
	height: 16px;
}

.beto-service .japply-btn--wa {
	background: #25d366;
	color: #fff;
}

.beto-service .japply-btn--wa:hover {
	background: #20bd5a;
	color: #fff;
}

.beto-service .japply-btn--email {
	background: var(--navy);
	color: #fff;
}

.beto-service .japply-btn--email:hover {
	background: var(--navy-lt);
	color: #fff;
}

/* ── Application info ── */
.japply-info {
	background: var(--bg-lt);
	padding: 20px;
	border-left: 3px solid var(--blue);
	margin: 24px 0;
}

.japply-info__label {
	font: 600 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--blue);
	margin-bottom: 8px;
	display: block;
	letter-spacing: .04em;
}

.japply-info__text {
	font: 400 15px/1.6 var(--ui);
	color: var(--txt-3);
}

.japply-info__text a {
	color: var(--blue);
	text-decoration: underline;
}

/* ── Expired notice ── */
.japply-expired {
	background: #fef2f2;
	padding: 20px;
	border-left: 3px solid var(--red);
	margin: 24px 0;
}

.japply-expired__label {
	font: 600 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--red);
	margin-bottom: 8px;
	display: block;
	letter-spacing: .04em;
}

.japply-expired__text {
	font: 400 15px/1.6 var(--ui);
	color: var(--red-dk);
}

/* ── Share bar ── */
.jshare {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 24px 0;
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
	margin-bottom: 24px;
	margin-top: 40px;
}

.jshare__label {
	font: 600 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	letter-spacing: .04em;
}

.jshare__buttons {
	display: flex;
	gap: 12px;
}

.jshare__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	color: var(--txt);
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	text-decoration: none;
}

.jshare__btn svg { width: 18px; height: 18px; }
.jshare__btn:hover { color: var(--blue); }

/* ── Tags ── */
.jtags {
	padding: 20px 0;
	border-top: 1px solid var(--border);
	margin-bottom: 20px;
}

.jtags__label {
	font: 900 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	margin-bottom: 12px;
	display: block;
	letter-spacing: .04em;
}

.jtags__list {
	font: 400 14px/1.6 var(--sans);
	color: var(--txt-3);
}

.jtags__list a {
	color: var(--txt-3);
	padding: 4px 8px;
	background: var(--border-lt);
	margin-right: 4px;
	display: inline-block;
	transition: all .15s;
}

.jtags__list a:hover {
	color: #fff;
	background: var(--blue);
}

/* ═══════════════════════════════════════
   "AUTRES OFFRES" section (3-column cards)
   ═══════════════════════════════════════ */

.jothers {
	max-width: var(--page);
	margin: 0 auto;
	padding: 60px 20px 48px;
}

.jothers__label {
	font: 900 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	letter-spacing: .04em;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--border);
	margin-bottom: 24px;
}

.jothers__label::after {
	content: '';
	display: block;
	width: 60px;
	height: 3px;
	background: var(--blue);
	margin-top: 10px;
}

.jothers__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.jothers__card {
	display: block;
	border: 1px solid var(--border);
	padding: 20px;
	transition: box-shadow .2s;
	text-decoration: none;
}

.jothers__card:hover {
	box-shadow: 0 4px 12px rgba(0,0,0,.1);
}

.jothers__badge {
	display: inline-block;
	background: var(--blue);
	color: #fff;
	font: 600 10px/1 var(--sans);
	text-transform: uppercase;
	padding: 4px 8px;
	margin-bottom: 12px;
}

.jothers__company {
	font: 600 13px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
	margin-bottom: 8px;
	letter-spacing: .03em;
}

.jothers__title {
	font: 700 1.125rem/1.25 var(--serif);
	color: var(--txt);
	margin-bottom: 12px;
}

.jothers__card:hover .jothers__title {
	color: var(--blue);
}

.jothers__location {
	font: 400 13px/1.5 var(--ui);
	color: var(--txt-3);
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	gap: 4px;
}

.jothers__meta {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	font: 400 11px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
}

.jothers__meta-item {
	background: var(--bg-lt);
	padding: 4px 8px;
}

/* ═══════════════════════════════════════
   ARCHIVE HEADER (for list pages)
   ═══════════════════════════════════════ */

.beto-archive {
	padding: 24px 0 60px;
	position: relative;
}

.beto-archive__header {
	margin-bottom: 20px;
}

.beto-archive__title {
	font: 700 2rem/1.15 var(--serif);
	color: var(--txt);
	letter-spacing: -.02em;
	margin: 0 0 8px;
}

.beto-archive__subtitle {
	font: 400 15px/1.4 var(--ui);
	color: var(--txt-3);
	margin: 0;
}

.beto-archive__count {
	font: 500 13px/1 var(--sans);
	color: var(--txt-3);
	margin-bottom: 16px;
	display: flex;
	align-items: center;
	gap: 6px;
}

.beto-archive__count strong {
	color: var(--txt);
}

.beto-archive__section-title {
	font: 700 1.25rem/1.2 var(--serif);
	margin: 32px 0 16px;
	color: var(--txt);
	padding-bottom: 8px;
	border-bottom: 1px solid var(--border);
}

.beto-archive__empty {
	text-align: center;
	padding: 60px 20px;
	color: var(--muted);
	font: 400 17px/1.5 var(--ui);
}

/* ═══════════════════════════════════════
   FILTERS
   ═══════════════════════════════════════ */

.beto-service .filters {
	background: var(--bg-lt) !important;
	border: 1px solid var(--border) !important;
	padding: 16px 20px !important;
	margin-bottom: 20px !important;
}

.filters__row {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	align-items: flex-end;
}

.filters__field {
	flex: 1;
	min-width: 180px;
	position: relative;
}

.filters__field--wide { flex: 2; }
.filters__field--btn { flex: 0 0 auto; min-width: auto; }

.filters__field > .beto-icon {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--muted);
	pointer-events: none;
	z-index: 1;
}

.filters__field > .beto-icon + .filters__search {
	padding-left: 36px;
}

.filters__search,
.filters__select,
.filters__date {
	width: 100%;
	padding: 10px 14px;
	font: 400 14px/1 var(--ui);
	border: 1px solid var(--border);
	background: #fff;
	transition: border-color .2s;
}

.filters__search:focus,
.filters__select:focus,
.filters__date:focus {
	outline: none;
	border-color: var(--blue);
	box-shadow: 0 0 0 3px rgba(0,127,255,.1);
}

/* ═══════════════════════════════════════
   ARCHIVE GRID & LIST
   ═══════════════════════════════════════ */

.beto-archive__grid--cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.beto-archive__list {
	display: flex;
	flex-direction: column;
	gap: 0;
}

/* ═══════════════════════════════════════
   ROWS (archive list view)
   ═══════════════════════════════════════ */

.arow {
	background: #fff;
	border: 1px solid var(--border-lt);
	border-left: 3px solid transparent;
	transition: all .2s;
	position: relative;
}

.arow + .arow { margin-top: -1px; }

.arow:hover {
	box-shadow: 0 2px 8px rgba(0,0,0,.08);
	z-index: 1;
	border-left-color: var(--blue);
	background: var(--bg-lt);
}

.arow--expired { opacity: 0.6; }

.arow__link {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 20px;
	text-decoration: none;
	color: inherit;
}

.arow__logo {
	width: 48px;
	height: 48px;
	overflow: hidden;
	flex-shrink: 0;
	background: var(--bg-lt);
	border: 1px solid var(--border-lt);
}

.arow__logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Icon wrap for rows */
.arow__icon-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	background: var(--bg-lt);
	border: 1px solid var(--border-lt);
	font-size: 20px;
	color: var(--muted);
}

.arow__icon-wrap--blue { color: var(--blue); }
.arow__icon-wrap--amber { color: var(--gold); }
.arow__icon-wrap--navy { color: var(--navy); }
.arow__icon-wrap--green { color: var(--beto-green); }
.arow__icon-wrap--red { color: var(--red); }

.arow__main {
	flex: 1;
	min-width: 0;
}

.arow__title {
	font: 700 15px/1.3 var(--sans);
	margin: 0 0 2px;
	color: var(--txt);
}

.arow:hover .arow__title {
	color: var(--blue);
}

.arow__subtitle {
	font: 400 13px/1.2 var(--ui);
	color: var(--txt-3);
	margin: 0;
	display: flex;
	align-items: center;
	gap: 4px;
}

/* Meta bits in rows */
.arow__meta-bit {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.arow__meta-bit + .arow__meta-bit::before {
	content: '\00b7';
	margin: 0 6px;
	color: var(--border);
}

/* Row arrow on hover */
.arow__arrow {
	display: flex;
	align-items: center;
	color: var(--border);
	opacity: 0;
	transform: translateX(-8px);
	transition: all .2s;
	flex-shrink: 0;
	font-size: 18px;
}

.arow:hover .arow__arrow {
	opacity: 1;
	transform: translateX(0);
	color: var(--blue);
}

.arow__tags {
	display: flex;
	gap: 6px;
	flex-shrink: 0;
	margin-left: auto;
}

.arow__tag {
	display: inline-block;
	padding: 4px 10px;
	font: 600 11px/1 var(--sans);
	text-transform: uppercase;
	background: var(--bg-lt);
	color: var(--txt-3);
	white-space: nowrap;
}

.arow__tag--price {
	background: #ecfdf5;
	color: #065f46;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.arow__tag--amber {
	background: #fef3c7;
	color: #92400e;
}

.arow__date {
	text-align: right;
	flex-shrink: 0;
	min-width: 90px;
	margin-left: 16px;
}

.arow__date-label {
	display: block;
	font: 400 11px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
}

.arow__date-value {
	font: 600 13px/1 var(--ui);
	color: var(--txt-2);
}

.arow__date--past .arow__date-value {
	color: var(--red);
}

/* Communiqué row with date block */
.arow--communique .arow__link { gap: 20px; }

.arow__date-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 56px;
	padding: 8px;
	background: var(--navy);
	color: #fff;
	text-align: center;
	flex-shrink: 0;
}

.arow__day {
	font: 800 20px/1 var(--sans);
}

.arow__month {
	font: 600 11px/1 var(--sans);
	text-transform: uppercase;
}

/* ═══════════════════════════════════════
   CARDS (generic — for events, annonces, etc.)
   ═══════════════════════════════════════ */

.beto-card {
	background: #fff;
	border: 1px solid var(--border);
	overflow: hidden;
	transition: all .2s;
}

.beto-card:hover {
	box-shadow: 0 4px 12px rgba(0,0,0,.1);
}

.beto-card__link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.beto-card__image {
	aspect-ratio: 16/10;
	overflow: hidden;
	background: var(--bg-lt);
	position: relative;
	height: 180px;
}

.beto-placeholder-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.beto-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s;
	display: block;
}

.beto-card:hover .beto-card__image img {
	transform: scale(1.05);
}

.beto-card__body { padding: 20px; }
.beto-card__header { padding: 20px; }

.beto-card__logo {
	width: 48px;
	height: 48px;
	overflow: hidden;
	flex-shrink: 0;
	background: var(--bg-lt);
	border: 1px solid var(--border-lt);
}

.beto-card__logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.beto-card__title {
	font: 700 1.0625rem/1.25 var(--serif);
	color: var(--txt);
	margin: 0 0 6px;
}

.beto-card:hover .beto-card__title {
	color: var(--blue);
}

.beto-card__company {
	font: 600 13px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
	margin: 0;
	letter-spacing: .03em;
}

.beto-card__price {
	font-size: 18px;
	font-weight: 700;
	color: var(--red);
	margin: 8px 0;
}

.beto-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font: 400 13px/1 var(--ui);
	color: var(--txt-3);
	padding: 0 20px 20px;
}

.beto-card__body .beto-card__meta {
	padding: 8px 0 0;
}

.beto-card__badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 8px;
	font: 600 10px/1 var(--sans);
	text-transform: uppercase;
	background: var(--bg-lt);
	color: var(--txt-3);
}

.beto-card__badge--amber { background: #fef3c7; color: #92400e; }
.beto-card__badge--navy { background: var(--navy); color: #fff; }
.beto-card__badge--green { background: #d1fae5; color: #065f46; }
.beto-card__badge--calendar { background: #dbeafe; color: #1e40af; }

.beto-card__badges {
	display: flex;
	gap: 6px;
	margin-bottom: 8px;
	flex-wrap: wrap;
}

.beto-card__date {
	font: 400 13px/1 var(--ui);
	color: var(--muted);
}

.beto-card__ref {
	font: 400 12px/1 monospace;
	color: var(--muted);
}

.beto-card__deadline {
	font: 600 13px/1 var(--sans);
	color: var(--gold-dk);
}

/* Event card date block */
.beto-card--event .beto-card__body {
	display: flex;
	gap: 14px;
}

.beto-card__date-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 50px;
	padding: 8px;
	background: var(--red);
	color: #fff;
	flex-shrink: 0;
}

.beto-card__day {
	font: 800 22px/1 var(--sans);
}

.beto-card__month {
	font: 600 12px/1 var(--sans);
	text-transform: uppercase;
}

.beto-card__content { flex: 1; }

/* ═══════════════════════════════════════
   BUTTONS
   ═══════════════════════════════════════ */

.beto-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 24px;
	font: 700 14px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .04em;
	border: none;
	cursor: pointer;
	text-decoration: none;
	transition: all .2s;
}

.beto-btn--primary {
	background: var(--blue);
	color: #fff;
}

.beto-btn--primary:hover {
	background: var(--blue-dk);
}

.beto-btn--outline {
	background: transparent;
	color: var(--blue);
	border: 1px solid var(--blue);
}

.beto-btn--outline:hover {
	background: var(--blue);
	color: #fff;
}

.beto-btn--whatsapp {
	background: #25d366;
	color: #fff;
}

.beto-btn--whatsapp:hover {
	background: #20bd5a;
}

.beto-btn--block { display: flex; width: 100%; margin-bottom: 10px; }
.beto-btn--lg { padding: 14px 32px; font-size: 15px; }

/* ═══════════════════════════════════════
   NOTICES
   ═══════════════════════════════════════ */

.beto-notice {
	padding: 16px 20px;
	margin-bottom: 20px;
	border-left: 3px solid transparent;
}

.beto-notice--info {
	background: #eff6ff;
	border-left-color: var(--blue);
}

.beto-notice--success {
	background: #ecfdf5;
	border-left-color: var(--beto-green);
}

.beto-notice--warning {
	background: #fffbeb;
	border-left-color: var(--gold);
}

.beto-notice p { margin: 0; }

/* ═══════════════════════════════════════
   SINGLE AO — TENDER HEAD
   ═══════════════════════════════════════ */

.thead {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 40px 20px 0;
}

.chead {
	max-width: var(--page);
	margin: 0 auto;
	padding: 40px 20px 0;
}

.thead__badge, .chead__badge {
	display: inline-block;
	padding: 6px 12px;
	font: 700 11px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .04em;
	color: #fff;
	margin-bottom: 12px;
}

.thead__badge--ao { background: var(--amber); color: #fff; }
.thead__badge--amber { background: var(--gold); color: var(--navy); }
.chead__badge--navy { background: var(--navy); }

.thead__ref {
	font: 400 13px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
	letter-spacing: .02em;
	margin-bottom: 8px;
}

.thead__title, .chead__title {
	font: 700 2.5rem/1.1 var(--serif);
	color: var(--txt);
	margin-bottom: 16px;
}

.thead__org, .chead__org {
	font: 400 1rem/1.4 var(--sans);
	color: var(--txt-3);
	margin-bottom: 32px;
	display: flex;
	align-items: center;
	gap: 12px;
}

.thead__org-logo {
	width: 40px;
	height: 40px;
	background: var(--bg-lt);
	display: flex;
	align-items: center;
	justify-content: center;
	font: 700 12px/1 var(--sans);
	color: var(--muted);
	flex-shrink: 0;
	overflow: hidden;
}

.thead__org-logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Legacy thead__top / thead__logo for emploi (keep) */
.thead__top {
	display: flex;
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 16px;
}

.thead__logo {
	width: 80px;
	height: 80px;
	overflow: hidden;
	flex-shrink: 0;
	background: var(--bg-lt);
	border: 1px solid var(--border);
}

.thead__logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.chead__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	font: 400 15px/1 var(--ui);
	color: var(--txt-3);
	margin-top: 16px;
}

/* ═══════════════════════════════════════
   SINGLE AO — METADATA PILLS
   ═══════════════════════════════════════ */

.tmeta {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 0 20px 32px;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.tmeta__pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--bg-lt);
	padding: 10px 14px;
	font: 400 13px/1 var(--sans);
	color: var(--txt-2);
	border: 1px solid var(--border-lt);
}

.tmeta__label {
	font: 700 11px/1 var(--sans);
	text-transform: uppercase;
	color: var(--muted);
	letter-spacing: .02em;
}

/* ═══════════════════════════════════════
   SINGLE AO — DEADLINE COUNTDOWN
   ═══════════════════════════════════════ */

.tdeadline {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 24px 20px 32px;
	background: rgba(206,16,33,.05);
	border-left: 4px solid var(--red);
}

.tdeadline__label {
	font: 700 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--red);
	letter-spacing: .04em;
	margin-bottom: 8px;
}

.tdeadline__date {
	font: 600 1.125rem/1.2 var(--serif);
	color: var(--txt-2);
}

.tdeadline__time {
	font: 400 13px/1 var(--sans);
	color: var(--muted);
	margin-top: 4px;
}

/* ═══════════════════════════════════════
   SINGLE AO — TENDER BODY
   ═══════════════════════════════════════ */

.tbody {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 0 20px 40px;
}

.tbody h2 {
	font: 900 1.5625rem/1.2 var(--serif);
	color: var(--txt);
	margin: 40px 0 20px;
	letter-spacing: -.01em;
}

.tbody h2::after {
	content: '';
	display: block;
	width: 40px;
	height: 3px;
	background: var(--accent);
	margin-top: 8px;
}

.tbody p {
	font: 400 1rem/1.6 var(--serif);
	color: var(--txt-2);
	margin-bottom: 16px;
}

.tbody strong { font-weight: 700; }
.tbody em { font-style: italic; }

.tbody ul { margin: 16px 0 24px 20px; }
.tbody ul li {
	font: 400 1rem/1.6 var(--serif);
	color: var(--txt-2);
	margin-bottom: 8px;
}

.tbody table {
	width: 100%;
	margin: 20px 0 24px;
	border-collapse: collapse;
	background: #fff;
}

.tbody table th {
	background: var(--bg-lt);
	padding: 12px 14px;
	text-align: left;
	font: 700 13px/1 var(--sans);
	color: var(--txt);
	text-transform: uppercase;
	letter-spacing: .02em;
	border-bottom: 1px solid var(--border);
}

.tbody table td {
	padding: 12px 14px;
	border-bottom: 1px solid var(--border);
	font: 400 14px/1.4 var(--serif);
	color: var(--txt-2);
}

/* Criteria */
.tcriteria { margin: 20px 0 24px; padding: 0; }
.tcriteria__item { display: flex; justify-content: space-between; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--border-lt); }
.tcriteria__name { font: 400 15px/1.4 var(--serif); color: var(--txt-2); }
.tcriteria__weight { font: 700 14px/1 var(--sans); color: var(--accent); min-width: 50px; text-align: right; }

/* Required documents */
.tdocs { margin: 20px 0 24px; }
.tdocs__item { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--border-lt); }
.tdocs__icon { width: 24px; height: 24px; flex-shrink: 0; color: var(--accent); margin-top: 2px; }
.tdocs__name { font: 400 15px/1.4 var(--serif); color: var(--txt-2); }

/* ═══════════════════════════════════════
   SINGLE AO — CTA SECTION
   ═══════════════════════════════════════ */

.beto-service--ao .tcta {
	max-width: var(--body-col);
	margin: 40px auto 0;
	padding: 32px 20px;
	background: var(--bg-lt);
	border-top: 3px solid var(--accent);
}

.tcta__label {
	font: 900 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	letter-spacing: .04em;
	margin-bottom: 20px;
}

.tcta__buttons {
	display: flex;
	align-items: center;
	gap: 16px;
}

.tcta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 28px;
	font: 700 13px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .03em;
	border: none;
	cursor: pointer;
	transition: background .2s;
	text-decoration: none;
}

.tcta .tcta__btn--download {
	background: var(--green);
	color: #fff;
}
.tcta .tcta__btn--download:hover { background: var(--green-dk); color: #fff; }

.tcta .tcta__btn--submit {
	background: var(--blue);
	color: #fff;
}
.tcta .tcta__btn--submit:hover { background: var(--blue-dk); color: #fff; }

/* ═══════════════════════════════════════
   SINGLE AO — CONTACT SECTION
   ═══════════════════════════════════════ */

.tcontact {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 32px 20px;
	border-top: 1px solid var(--border);
}

.tcontact__label {
	font: 900 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	letter-spacing: .04em;
	margin-bottom: 16px;
	display: block;
}

.tcontact__info {
	font: 400 15px/1.6 var(--serif);
	color: var(--txt-2);
}

.tcontact__info a {
	color: var(--accent);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.tcontact__info a:hover { color: var(--accent-dk); }

/* ═══════════════════════════════════════
   SINGLE AO — TAGS
   ═══════════════════════════════════════ */

.ttags {
	max-width: var(--body-col);
	margin: 0 auto;
	padding: 32px 20px;
	border-top: 1px solid var(--border);
}

.ttags__label {
	font: 900 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	letter-spacing: .04em;
	margin-bottom: 12px;
	display: block;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--border-lt);
}

.ttags__list {
	font: 400 14px/1.6 var(--sans);
	color: var(--txt-3);
}

.ttags__list a {
	color: var(--txt-3);
	padding: 4px 8px;
	background: var(--border-lt);
	margin-right: 4px;
	display: inline-block;
	margin-bottom: 4px;
	text-decoration: none;
}

.ttags__list a:hover {
	color: #fff;
	background: var(--blue);
}

/* ═══════════════════════════════════════
   SINGLE — COMMUNIQUÉ SPECIFIC
   ═══════════════════════════════════════ */

.chead__logo {
	max-width: 200px;
	margin-bottom: 16px;
}

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

.cbody {
	padding: 40px 0;
}

.cbody__content {
	max-width: 720px;
	margin: 0 auto;
	font: 400 17px/1.8 Georgia, 'Times New Roman', serif;
	color: var(--txt-2);
}

.csignature {
	max-width: 720px;
	margin: 40px auto 0;
	padding-top: 24px;
	border-top: 1px solid var(--border);
	text-align: right;
}

.csignature__label {
	font: 400 14px/1 var(--ui);
	color: var(--txt-3);
	margin-bottom: 4px;
}

.csignature__name {
	font: 700 16px/1 var(--ui);
	color: var(--txt);
}

.cpdf {
	max-width: 720px;
	margin: 24px auto;
	text-align: center;
}

/* ═══════════════════════════════════════
   SINGLE — RELATED SECTIONS (non-emploi)
   ═══════════════════════════════════════ */

.tothers, .crelated {
	max-width: var(--page);
	margin: 0 auto;
	padding: 40px 20px 48px;
}

.tothers__label, .crelated__title {
	font: 900 12px/1 var(--sans);
	text-transform: uppercase;
	color: var(--txt);
	letter-spacing: .04em;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--border);
	margin-bottom: 20px;
}

.tothers__label::after {
	content: '';
	display: block;
	width: 60px;
	height: 3px;
	background: var(--accent);
	margin-top: 10px;
}

.tothers__grid, .crelated__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.tothers__card {
	display: block;
	border: 1px solid var(--border);
	padding: 20px;
	transition: box-shadow .2s;
	text-decoration: none;
}
.tothers__card:hover { box-shadow: 0 4px 12px rgba(0,0,0,.1); }

.tothers__badge {
	display: inline-block;
	background: var(--amber);
	color: #fff;
	font: 700 10px/1 var(--sans);
	text-transform: uppercase;
	letter-spacing: .03em;
	padding: 5px 10px;
	margin-bottom: 10px;
}

.tothers__ref {
	font: 400 11px/1 var(--sans);
	color: var(--muted);
	text-transform: uppercase;
	letter-spacing: .02em;
	margin-bottom: 6px;
	display: block;
}

.tothers__title {
	font: 700 1.125rem/1.25 var(--serif);
	color: var(--txt);
	margin-bottom: 10px;
}
.tothers__card:hover .tothers__title { color: var(--accent); }

.tothers__meta {
	font: 400 11px/1 var(--sans);
	color: var(--muted-2);
	text-transform: uppercase;
	margin-top: 8px;
	display: block;
}

/* ═══════════════════════════════════════
   SINGLE — SIDEBAR (for Appels d'offres, etc.)
   ═══════════════════════════════════════ */

.beto-layout-sidebar {
	display: grid;
	grid-template-columns: 1fr 340px;
	gap: 40px;
	max-width: var(--page);
	margin: 0 auto;
	padding: 40px 20px;
	align-items: start;
}
.beto-layout-sidebar > :last-child {
	position: sticky;
	top: 20px;
}

.japply__card {
	background: #fff;
	border: 1px solid var(--border);
	padding: 24px;
	margin-bottom: 20px;
}

.japply__title {
	font: 700 16px/1 var(--sans);
	margin: 0 0 16px;
}

.japply__expired {
	color: var(--red);
	font-weight: 600;
}

.japply__deadline {
	font: 400 14px/1 var(--ui);
	color: var(--txt-3);
	margin-top: 12px;
	text-align: center;
}

.japply__price {
	font: 400 14px/1 var(--ui);
	color: var(--txt-3);
	margin-top: 12px;
	text-align: center;
}

.japply__contact-name {
	font-weight: 600;
	margin-bottom: 12px;
}

.japply__company-card {
	background: #fff;
	border: 1px solid var(--border);
	padding: 20px;
	text-align: center;
	margin-bottom: 20px;
}

.japply__company-card:hover {
	border-color: var(--blue);
}

.japply__company-card h4 {
	font: 700 15px/1 var(--sans);
	margin: 8px 0 4px;
	color: var(--txt);
}

.japply__company-card p {
	font: 400 14px/1 var(--ui);
	color: var(--txt-3);
	margin: 0;
}

.japply__company-logo {
	width: 64px;
	height: 64px;
	margin: 0 auto 8px;
	display: block;
	background: var(--bg-lt);
	object-fit: cover;
}

/* ═══════════════════════════════════════
   THEAD — LOGO PLACEHOLDER (legacy emploi)
   ═══════════════════════════════════════ */

.thead__logo--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	font: 700 14px/1 var(--sans);
	color: var(--muted);
	letter-spacing: .02em;
}

/* ═══════════════════════════════════════
   TDEADLINE — EXPIRED STATE
   ═══════════════════════════════════════ */

.tdeadline--expired {
	background: #fef2f2;
	border-left-color: var(--red);
}

.tdeadline--expired .tdeadline__label { color: var(--red); }
.tdeadline--expired .tdeadline__date { color: var(--red-dk); }
.tdeadline--expired .tdeadline__time { color: var(--red); }

/* ═══════════════════════════════════════
   CARD — EXPIRED + BUDGET
   ═══════════════════════════════════════ */

.beto-card--expired { opacity: 0.6; }

.beto-card__budget {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font: 500 13px/1 var(--ui);
	color: var(--txt-3);
}

.beto-card__deadline--past {
	color: var(--red) !important;
}

/* ═══════════════════════════════════════
   JBODY SECTIONS (used in sidebar layouts)
   ═══════════════════════════════════════ */

.jbody__section {
	margin-bottom: 32px;
}

.jbody__heading {
	font: 700 1.375rem/1.3 var(--serif);
	color: var(--txt);
	margin: 0 0 16px;
	letter-spacing: -.01em;
}

.jbody__text {
	font: 400 16px/1.75 var(--ui);
	color: var(--txt-2);
}

.jbody__text p { margin: 0 0 16px; }
.jbody__text p:last-child { margin: 0; }
.jbody__text ul, .jbody__text ol { margin: 0 0 16px; padding-left: 24px; }
.jbody__text li { margin-bottom: 8px; }

/* ═══════════════════════════════════════
   ANNONCE — SINGLE PAGE
   ═══════════════════════════════════════ */

/* ── Secbar color override for annonces ── */
.beto-service--annonce { --secbar-color: var(--blue); --accent: var(--blue); }

/* ── Badges row (multiple inline badges) ── */
.jhead__badges-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }

/* ── Price tag highlight ── */
.jhead__tag--price { background: var(--gold); color: var(--navy); font-weight: 700; }

/* ── Sold / expired state ── */
.jhead__deadline--sold { background: #fee2e2; border-left-color: var(--red); }
.jhead__deadline--sold .jhead__deadline-label { color: var(--red); }

/* ── Contact buttons row ── */
.jcontact-btns { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0; }
.jcontact-btns .japply-btn { margin: 0; }

/* ── Image ── */
.beto-single-annonce__image,
.beto-single-event__image {
	overflow: hidden;
	margin-bottom: 24px;
}

.beto-single-annonce__image img,
.beto-single-event__image img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform .3s;
}

.beto-single-annonce__image:hover img,
.beto-single-event__image:hover img {
	transform: scale(1.02);
}

/* ═══════════════════════════════════════
   MBOKA — COMMUNES
   ═══════════════════════════════════════ */

.mboka-communes { margin-bottom: 40px; }

.mboka-communes__title {
	font: 700 1.25rem/1.2 var(--serif);
	margin: 0 0 16px;
	color: var(--txt);
}

.mboka-communes__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.mboka-communes__item {
	display: flex;
	flex-direction: column;
	padding: 16px;
	background: #fff;
	border: 1px solid var(--border-lt);
	text-decoration: none;
	transition: all .15s;
}

.mboka-communes__item:hover {
	border-color: var(--blue);
	box-shadow: 0 2px 8px rgba(0,0,0,.08);
}

.mboka-communes__name {
	font: 700 15px/1 var(--sans);
	color: var(--txt);
}

.mboka-communes__count {
	font: 400 13px/1 var(--ui);
	color: var(--muted);
	margin-top: 4px;
}

/* ═══════════════════════════════════════
   PUBLICITÉ PAGE
   ═══════════════════════════════════════ */

.beto-service--publicite { --secbar-color: var(--navy); --accent: var(--red); }

/* ── Hero ── */
.pub-hero { max-width: var(--page); margin: 0 auto; padding: 56px 20px 0; }
.pub-hero__kicker { font: 800 .75rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin-bottom: 16px; }
.pub-hero__title { font: 800 2.75rem/1.08 var(--serif); color: var(--txt); max-width: 800px; letter-spacing: -.02em; margin-bottom: 20px; }
.pub-hero__lead { font: 400 1.125rem/1.7 var(--ui); color: var(--txt-3); max-width: 700px; margin-bottom: 32px; }
.pub-hero__actions { display: flex; gap: 12px; flex-wrap: wrap; }
.pub-hero__btn { display: inline-block; padding: 14px 28px; font: 700 .8125rem/1 var(--sans); text-transform: uppercase; letter-spacing: .04em; border: none; cursor: pointer; transition: background .15s; text-decoration: none; }
.pub-hero__btn--primary { background: var(--red); color: #fff; }
.pub-hero__btn--primary:hover { background: var(--red-dk); color: #fff; }
.pub-hero__btn--secondary { background: var(--bg-lt); color: var(--navy); border: 1px solid var(--border); }
.pub-hero__btn--secondary:hover { background: var(--border-lt); border-color: var(--navy); }

/* ── Separator ── */
.beto-service--publicite .sep-wrap { max-width: var(--page); margin: 0 auto; padding: 0 20px; }
.beto-service--publicite .sep { height: 1px; background: var(--border-lt); margin: 48px 0; }

/* ── Audience Stats ── */
.audience { max-width: var(--page); margin: 0 auto; padding: 0 20px; }
.audience__title { font: 800 1rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--navy); margin-bottom: 28px; }
.audience__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }
.audience__card { background: var(--bg-lt); border-top: 3px solid var(--navy); padding: 24px 20px; text-align: center; }
.audience__card--red { border-top-color: var(--red); }
.audience__card--blue { border-top-color: var(--blue); }
.audience__card--gold { border-top-color: var(--gold); }
.audience__num { font: 900 2rem/1 var(--sans); color: var(--navy); margin-bottom: 6px; }
.audience__card--red .audience__num { color: var(--red); }
.audience__card--blue .audience__num { color: var(--blue); }
.audience__card--gold .audience__num { color: var(--gold-dk); }
.audience__label { font: 500 .75rem/1.3 var(--ui); color: var(--txt-3); text-transform: uppercase; letter-spacing: .04em; }

/* ── Services — Nos offres ── */
.services { max-width: var(--page); margin: 0 auto; padding: 0 20px; }
.services__title { font: 800 1rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--navy); margin-bottom: 28px; }
.services__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.svc { padding: 32px; background: #fff; border: 1px solid var(--border-lt); transition: border-color .15s; }
.svc:hover { border-color: var(--navy); }
.svc__icon { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; background: var(--navy); color: #fff; border-radius: 50%; margin-bottom: 20px; }
.svc__icon--red { background: var(--red); }
.svc__icon--blue { background: var(--blue); }
.svc__icon--gold { background: var(--gold); color: var(--navy); }
.svc__icon svg { width: 24px; height: 24px; }
.svc__name { font: 700 1.125rem/1.2 var(--serif); color: var(--txt); margin-bottom: 10px; }
.svc__desc { font: 400 .9375rem/1.6 var(--ui); color: var(--txt-3); margin-bottom: 16px; }
.svc__list { list-style: none; padding: 0; }
.svc__list li { padding: 6px 0; font: 400 .875rem/1.4 var(--ui); color: var(--txt-2); border-bottom: 1px solid var(--border-lt); display: flex; align-items: center; gap: 8px; }
.svc__list li:last-child { border-bottom: none; }
.svc__check { width: 14px; height: 14px; color: var(--accent); flex-shrink: 0; }

/* ── Kit Média — Grille tarifaire ── */
.tarifs { max-width: var(--page); margin: 0 auto; padding: 0 20px; }
.tarifs__title { font: 800 1rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--navy); margin-bottom: 8px; }
.tarifs__sub { font: 400 .9375rem/1.5 var(--ui); color: var(--txt-3); margin-bottom: 28px; max-width: 640px; }
.tarifs__table-wrap { overflow-x: auto; margin-bottom: 16px; }
.tarifs__table { width: 100%; border-collapse: collapse; font: 400 .875rem/1.4 var(--ui); min-width: 720px; }
.tarifs__table thead th { padding: 14px 16px; font: 700 .6875rem/1 var(--sans); text-transform: uppercase; letter-spacing: .06em; color: #fff; background: var(--navy); text-align: left; white-space: nowrap; }
.tarifs__table thead th:first-child { min-width: 260px; }
.tarifs__table tbody td { padding: 12px 16px; border-bottom: 1px solid var(--border-lt); vertical-align: top; }
.tarifs__table tbody tr:hover { background: var(--bg-lt); }
.tarifs__table .t-format { font: 600 .875rem/1.3 var(--ui); color: var(--txt); }
.tarifs__table .t-detail { font: 400 .75rem/1.4 var(--ui); color: var(--muted); display: block; margin-top: 2px; }
.tarifs__table .t-price { font: 800 1rem/1 var(--sans); color: var(--navy); white-space: nowrap; }
.tarifs__table .t-unit { font: 400 .75rem/1 var(--ui); color: var(--muted); display: block; margin-top: 2px; }
.tarifs__table .t-cat td { padding: 10px 16px; font: 700 .6875rem/1 var(--sans); text-transform: uppercase; letter-spacing: .05em; background: var(--bg-lt); color: var(--txt-3); }
.tarifs__note { font: 400 .75rem/1.5 var(--ui); color: var(--muted); margin-bottom: 0; }

/* ── Packs Sponsoring ── */
.packs { max-width: var(--page); margin: 0 auto; padding: 0 20px; }
.packs__title { font: 800 1rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--navy); margin-bottom: 28px; }
.packs__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.pack { border: 1px solid var(--border-lt); overflow: hidden; display: flex; flex-direction: column; }
.pack--featured { border: 2px solid var(--red); }
.pack__head { padding: 28px 24px 20px; text-align: center; border-bottom: 1px solid var(--border-lt); }
.pack--featured .pack__head { background: var(--red); border-bottom: none; }
.pack__badge { display: inline-block; font: 800 .625rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin-bottom: 8px; }
.pack--featured .pack__badge { color: rgba(255,255,255,.8); }
.pack__name { font: 800 1.5rem/1.1 var(--serif); color: var(--txt); margin-bottom: 6px; }
.pack--featured .pack__name { color: #fff; }
.pack__price { font: 900 2.25rem/1 var(--sans); color: var(--navy); margin-bottom: 4px; }
.pack--featured .pack__price { color: #fff; }
.pack__period { font: 400 .75rem/1 var(--ui); color: var(--muted); }
.pack--featured .pack__period { color: rgba(255,255,255,.7); }
.pack__body { padding: 24px; flex: 1; display: flex; flex-direction: column; }
.pack__list { list-style: none; padding: 0; flex: 1; }
.pack__list li { padding: 8px 0; font: 400 .875rem/1.4 var(--ui); color: var(--txt-2); border-bottom: 1px solid var(--border-lt); display: flex; align-items: flex-start; gap: 8px; }
.pack__list li:last-child { border-bottom: none; }
.pack__list .pk-check { width: 14px; height: 14px; color: var(--accent); flex-shrink: 0; margin-top: 2px; }
.pack--featured .pk-check { color: var(--red); }
.pack__cta { display: block; margin-top: 20px; padding: 14px; font: 700 .8125rem/1 var(--sans); text-transform: uppercase; letter-spacing: .04em; text-align: center; border: none; cursor: pointer; transition: background .15s; text-decoration: none; }
.pack__cta--primary { background: var(--red); color: #fff; }
.pack__cta--primary:hover { background: var(--red-dk); color: #fff; }
.pack__cta--outline { background: #fff; color: var(--navy); border: 1px solid var(--navy); }
.pack__cta--outline:hover { background: var(--navy); color: #fff; }

/* ── Couverture rédactionnelle ── */
.coverage { max-width: var(--page); margin: 0 auto; padding: 0 20px; }
.coverage__title { font: 800 1rem/1 var(--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--navy); margin-bottom: 8px; }
.coverage__sub { font: 400 .9375rem/1.5 var(--ui); color: var(--txt-3); margin-bottom: 28px; max-width: 640px; }
.coverage__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.cov-card { padding: 28px; background: var(--bg-lt); border-left: 4px solid var(--navy); }
.cov-card--red { border-left-color: var(--red); }
.cov-card--blue { border-left-color: var(--blue); }
.cov-card--gold { border-left-color: var(--gold); }
.cov-card__name { font: 700 1.125rem/1.2 var(--serif); color: var(--txt); margin-bottom: 8px; }
.cov-card__desc { font: 400 .9375rem/1.6 var(--ui); color: var(--txt-3); margin-bottom: 12px; }
.cov-card__price { font: 800 1.125rem/1 var(--sans); color: var(--navy); }
.cov-card__price span { font: 400 .75rem/1 var(--ui); color: var(--muted); }

/* ── Contact CTA ── */
.pub-cta { max-width: var(--page); margin: 0 auto; padding: 0 20px 64px; }
.pub-cta__box { background: var(--navy); padding: 48px; display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: center; }
.pub-cta__text { color: #fff; }
.pub-cta__title { font: 800 1.5rem/1.2 var(--serif); margin-bottom: 10px; }
.pub-cta__sub { font: 400 1rem/1.5 var(--ui); color: rgba(255,255,255,.7); }
.pub-cta__right { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.pub-cta__email { display: flex; align-items: center; gap: 10px; font: 600 1rem/1 var(--ui); color: #fff; }
.pub-cta__email svg { width: 20px; height: 20px; color: var(--gold); flex-shrink: 0; }
.pub-cta__phone { display: flex; align-items: center; gap: 10px; font: 400 .9375rem/1 var(--ui); color: rgba(255,255,255,.7); }
.pub-cta__phone svg { width: 18px; height: 18px; flex-shrink: 0; }
.pub-cta__btn { display: inline-block; margin-top: 8px; padding: 12px 28px; font: 700 .8125rem/1 var(--sans); text-transform: uppercase; letter-spacing: .04em; background: var(--red); color: #fff; border: none; cursor: pointer; transition: background .15s; text-decoration: none; }
.pub-cta__btn:hover { background: var(--red-dk); color: #fff; }

/* ── Publicité Responsive ── */
@media (max-width: 1100px) {
	.audience__grid { grid-template-columns: repeat(3, 1fr); }
	.packs__grid { grid-template-columns: 1fr; }
	.packs__grid .pack--featured { order: -1; }
}
@media (max-width: 1000px) {
	.services__grid { grid-template-columns: 1fr; }
	.coverage__grid { grid-template-columns: 1fr; }
	.pub-cta__box { grid-template-columns: 1fr; text-align: center; }
	.pub-cta__right { align-items: center; }
}
@media (max-width: 768px) {
	.pub-hero__title { font-size: 2rem; }
	.pub-hero { padding-top: 40px; }
	.audience__grid { grid-template-columns: repeat(2, 1fr); }
	.pub-cta__box { padding: 32px 24px; }
}
@media (max-width: 480px) {
	.pub-hero__title { font-size: 1.75rem; }
	.pub-hero__actions { flex-direction: column; }
	.audience__grid { grid-template-columns: 1fr 1fr; }
	.audience__num { font-size: 1.5rem; }
}

/* ═══════════════════════════════════════
   SUBMISSION FORMS
   ═══════════════════════════════════════ */

.beto-submit-form {
	background: #fff;
	border: 1px solid var(--border);
	padding: 32px;
	max-width: 720px;
	margin: 0 auto;
}

.beto-form__title {
	font: 700 24px/1 var(--sans);
	margin: 0 0 24px;
}

.beto-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.beto-form__field--full {
	grid-column: 1 / -1;
}

.beto-form__field label {
	display: block;
	font: 600 14px/1 var(--ui);
	color: var(--txt-2);
	margin-bottom: 6px;
}

.beto-form__field .required {
	color: var(--red);
}

.beto-form__field input,
.beto-form__field select,
.beto-form__field textarea {
	width: 100%;
	padding: 10px 14px;
	font: 400 14px/1 var(--ui);
	border: 1px solid var(--border);
	transition: border-color .2s;
	background: #fff;
}

.beto-form__field input:focus,
.beto-form__field select:focus,
.beto-form__field textarea:focus {
	outline: none;
	border-color: var(--blue);
	box-shadow: 0 0 0 3px rgba(0,127,255,.1);
}

.beto-form__field textarea {
	resize: vertical;
	min-height: 120px;
}

.beto-form__actions {
	margin-top: 24px;
	text-align: right;
}

/* ═══════════════════════════════════════
   PAGINATION
   ═══════════════════════════════════════ */

.pager {
	margin-top: 32px;
	text-align: center;
}

.pager .nav-links {
	display: flex;
	justify-content: center;
	gap: 4px;
}

.pager .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 8px;
	border: 1px solid var(--border);
	font: 400 14px/1 var(--ui);
	color: var(--txt-2);
	text-decoration: none;
	transition: all .15s;
}

.pager .page-numbers:hover {
	border-color: var(--blue);
	color: var(--blue);
	background: var(--bg-lt);
}

.pager .page-numbers.current {
	background: var(--blue);
	border-color: var(--blue);
	color: #fff;
}

/* ═══════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════ */

@media (max-width: 1100px) {
	.jothers__grid { grid-template-columns: 1fr; }
	.tothers__grid, .crelated__grid { grid-template-columns: 1fr; }
}

@media (max-width: 992px) {
	.beto-layout-sidebar { grid-template-columns: 1fr; }
	.beto-layout-sidebar > :last-child { position: static; }
	.beto-archive__grid--cards { grid-template-columns: repeat(2, 1fr); }
	.audience__grid { grid-template-columns: repeat(3, 1fr); }
	.packs__grid { grid-template-columns: 1fr; max-width: 400px; margin: 0 auto; }
	.mboka-communes__grid { grid-template-columns: repeat(3, 1fr); }
	.pub-services__grid { grid-template-columns: repeat(2, 1fr); }
}

/* ─── TABLET / SMALL DESKTOP ─── */
@media (max-width: 768px) {

	/* ▸ Container */
	.beto-container { padding: 0 16px; }

	/* ▸ Secbar */
	.secbar { padding: 0 16px; }
	.secbar__in {
		gap: 6px;
		padding: 0;
	}
	.secbar__label { font-size: 12px; }
	.secbar__type { font-size: 12px; }
	.secbar__links a {
		font-size: 12px;
		padding: 6px 10px;
		white-space: nowrap;
	}

	/* ▸ Readbar (single detail) */
	.readbar__rubrique { display: none; }
	.readbar__in { gap: 10px; padding: 0 16px; }
	.readbar__logo { font-size: 1.25rem; }
	.readbar__title { font-size: .8125rem; max-width: 45vw; }
	.readbar__share { gap: 4px; }
	.readbar__btn { width: 28px; height: 28px; }

	/* ▸ Archive header */
	.beto-archive { padding: 20px 0 40px; }
	.beto-archive__header { margin-bottom: 16px; }
	.beto-archive__title { font-size: 1.5rem; }
	.beto-archive__subtitle { font-size: 14px; }
	.beto-archive__count { font-size: 12px; }

	/* ▸ Filters — full-width stacked */
	.beto-service .filters {
		padding: 12px 16px !important;
		margin-bottom: 16px !important;
	}
	.filters__row {
		flex-direction: column;
		gap: 10px;
	}
	.filters__field {
		min-width: 100%;
		flex: unset;
	}
	.filters__field--wide { flex: unset; }
	.filters__field--btn {
		min-width: 100%;
	}
	.filters__field--btn .beto-btn {
		width: 100%;
		justify-content: center;
	}
	.filters__search,
	.filters__select,
	.filters__date {
		font-size: 14px;
		height: 42px;
	}

	/* ▸ Archive rows — stack vertically */
	.arow__link {
		flex-wrap: wrap;
		gap: 12px;
		padding: 14px 16px;
	}
	.arow__icon-wrap {
		width: 40px;
		height: 40px;
		font-size: 18px;
	}
	.arow__title { font-size: 14px; }
	.arow__subtitle { font-size: 12px; }
	.arow__tags {
		width: 100%;
		margin-left: 0;
		margin-top: 4px;
		padding-left: 52px;
	}
	.arow__tag { font-size: 11px; padding: 3px 8px; }
	.arow__date {
		margin-left: 0;
		margin-top: 4px;
		width: 100%;
		text-align: left;
		padding-left: 52px;
	}
	.arow__date-label { font-size: 10px; }
	.arow__date-value { font-size: 12px; }
	.arow__arrow { display: none; }

	/* ▸ Pagination */
	.pager { padding: 24px 0 0; }
	.pager .page-numbers {
		min-width: 32px;
		height: 32px;
		font-size: 13px;
	}

	/* ▸ Single — jhead */
	.jhead { padding: 24px 16px 0; }
	.jhead__title { font-size: 2rem; line-height: 1.15; }
	.jhead__header { flex-direction: column; }
	.jhead__logo { width: 56px; height: 56px; }
	.jhead__meta { flex-direction: column; gap: 8px; }
	.jhead__tag { width: 100%; }

	/* ▸ Single — jbody */
	.jbody { padding: 24px 16px 0; }
	.jbody p { font-size: 1rem; line-height: 1.65; }
	.jsection__title { font-size: 1.375rem; }

	/* ▸ Apply buttons — full width */
	.japply-btn {
		width: 100%;
		justify-content: center;
		padding: 14px 24px;
		font-size: 13px;
	}
	.japply-info { padding: 16px; margin: 20px 0; }
	.japply-expired { padding: 16px; margin: 20px 0; }

	/* ▸ Share bar — wrap */
	.jshare {
		flex-wrap: wrap;
		gap: 12px;
		padding: 20px 0;
		margin-top: 32px;
	}
	.jshare__label { font-size: 11px; width: 100%; }
	.jshare__buttons { gap: 8px; }

	/* ▸ Tags */
	.jtags { padding: 16px 0; margin-bottom: 16px; }
	.jtags__label { font-size: 11px; margin-bottom: 10px; }
	.jtags__list a { font-size: 13px; padding: 3px 6px; }

	/* ▸ "Autres offres" cards */
	.jothers { padding: 32px 16px; }
	.jothers__grid { grid-template-columns: 1fr; gap: 12px; }
	.jothers__card { padding: 20px; }
	.jothers__title { font-size: 15px; }

	/* ▸ AO-specific — thead, tmeta, tdeadline, tbody, tcta, tcontact, ttags */
	.thead, .chead { padding: 24px 16px 0; }
	.thead__title, .chead__title { font-size: 1.875rem; line-height: 1.15; }
	.tmeta { padding: 0 16px 24px; }
	.tdeadline { padding: 20px 16px; }
	.tbody { padding: 0 16px 32px; }
	.tbody h2 { font-size: 1.375rem; }
	.beto-service--ao .tcta { padding: 24px 16px; margin: 32px auto 0; }
	.tcta__buttons { flex-direction: column; align-items: stretch; }
	.tcta__btn { justify-content: center; }
	.tcontact { padding: 24px 16px; }
	.ttags { padding: 24px 16px; }

	/* ▸ Sidebar layout stacking (legacy emploi) */
	.beto-layout-sidebar { padding: 24px 16px; gap: 24px; }

	/* ▸ AO tothers + related */
	.tothers, .crelated { padding: 32px 16px 32px; }
	.tothers__grid, .crelated__grid { grid-template-columns: 1fr; }

	/* ▸ jbody sections (sidebar layouts - emploi) */
	.jbody__section { margin-bottom: 24px; }
	.jbody__heading { font-size: 1.25rem; }
	.jbody__text { font-size: 15px; }

	/* ▸ Other modules */
	.beto-archive__grid--cards { grid-template-columns: 1fr; }
	.pub-services__grid { grid-template-columns: 1fr; }
	.audience__grid { grid-template-columns: repeat(2, 1fr); }
	.beto-form__grid { grid-template-columns: 1fr; }
	.pub-hero__actions { flex-direction: column; align-items: center; }
	.mboka-communes__grid { grid-template-columns: repeat(2, 1fr); }

	.chead__meta {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ─── SMALL TABLET ─── */
@media (max-width: 640px) {
	.audience__grid { grid-template-columns: 1fr; }
	.mboka-communes__grid { grid-template-columns: repeat(2, 1fr); }
	.pub-hero { padding: 60px 0; }
	.pub-hero__title { font-size: 24px; }
	.pub-hero__text { font-size: 16px; }
	.beto-form__grid { grid-template-columns: 1fr; }
}

/* ─── MOBILE ─── */
@media (max-width: 480px) {

	/* ▸ Container */
	.beto-container { padding: 0 12px; }

	/* ▸ Secbar compact */
	.secbar { padding: 0 12px; }
	.secbar__in { padding: 0; gap: 4px; }
	.secbar__label { font-size: 11px; }
	.secbar__chevron { width: 4px; }
	.secbar__type { font-size: 11px; }
	.secbar__sep { margin: 0 4px; }
	.secbar__links a { font-size: 11px; padding: 5px 8px; }

	/* ▸ Archive */
	.beto-archive { padding: 16px 0 32px; }
	.beto-archive__title { font-size: 1.25rem; }
	.beto-archive__subtitle { font-size: 13px; }
	.beto-archive__empty { padding: 40px 16px; font-size: 15px; }

	/* ▸ Filters */
	.beto-service .filters { padding: 10px 12px !important; }
	.filters__row { gap: 8px; }
	.filters__search,
	.filters__select,
	.filters__date {
		font-size: 13px;
		height: 40px;
		padding: 0 10px;
	}

	/* ▸ Rows */
	.arow__link { padding: 12px; gap: 10px; }
	.arow__icon-wrap { width: 36px; height: 36px; font-size: 16px; }
	.arow__title { font-size: 13px; }
	.arow__subtitle { font-size: 11px; }
	.arow__tags { padding-left: 46px; }
	.arow__tag { font-size: 10px; padding: 2px 6px; }
	.arow__date { padding-left: 46px; }

	/* ▸ Single — jhead */
	.jhead { padding: 20px 12px 0; }
	.jhead__title { font-size: 1.75rem; }
	.jhead__logo { width: 48px; height: 48px; }

	/* ▸ Single — jbody */
	.jbody { padding: 20px 12px 0; }
	.jbody p { font-size: .9375rem; }
	.jsection__title { font-size: 1.25rem; }

	/* ▸ Apply */
	.japply-btn { padding: 12px 20px; font-size: 12px; }
	.japply-info { padding: 14px; }
	.japply-info__label { font-size: 11px; }
	.japply-info__text { font-size: 14px; }

	/* ▸ Share */
	.jshare { padding: 16px 0; margin-top: 24px; }
	.jshare__btn { width: 28px; height: 28px; }
	.jshare__btn svg { width: 16px; height: 16px; }

	/* ▸ Tags */
	.jtags__list a { font-size: 12px; }

	/* ▸ Autres offres */
	.jothers { padding: 24px 12px; }
	.jothers__label { font-size: 11px; }
	.jothers__title { font-size: 14px; }
	.jothers__card { padding: 16px; }

	/* ▸ Readbar */
	.readbar__in { padding: 0 12px; gap: 8px; }
	.readbar__logo { font-size: 1.1rem; }
	.readbar__title { font-size: .75rem; max-width: 40vw; }

	/* ▸ AO-specific */
	.thead__title, .chead__title { font-size: 1.5rem; }
	.tbody h2 { font-size: 1.25rem; }
	/* ▸ Legacy emploi / sidebar */
	.thead, .chead { padding: 20px 12px 0; }
	.thead__logo { width: 48px; height: 48px; }
	.beto-layout-sidebar { padding: 20px 12px; gap: 20px; }
	.jbody__heading { font-size: 1.125rem; }
	.jbody__text { font-size: 14px; }

	/* ▸ Pagination */
	.pager .page-numbers { min-width: 28px; height: 28px; font-size: 12px; padding: 0 6px; }
}

/* ─── TOUCH DEVICE ENHANCEMENTS ─── */
@media (hover: none) and (pointer: coarse) {
	/* Ensure minimum 44px tap targets */
	.secbar__links a { min-height: 44px; display: flex; align-items: center; }
	.readbar__btn { min-width: 44px; min-height: 44px; }
	.jshare__btn { min-width: 44px; min-height: 44px; }
	.pager .page-numbers { min-width: 40px; min-height: 40px; }

	/* Disable hover effects that don't translate to touch */
	.arow:hover .arow__title { color: var(--txt); }
	.arow:hover .arow__arrow { color: var(--muted); }

	/* Smooth momentum scrolling */
	.secbar__in,
	.secbar__links {
		-webkit-overflow-scrolling: touch;
		scroll-behavior: smooth;
	}
}


/* ============================================================
   REGARDER PAGE — Tableau de bord vidéo
   ============================================================ */

/* ── Video Hero (scoped to avoid beto-articles.css conflicts) ── */
.beto-service--regarder .vhero{max-width:var(--page);margin:0 auto;padding:32px 20px 0;background:none}
.beto-service--regarder .vhero__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}
.beto-service--regarder .vhero__player{position:relative;background:#000;aspect-ratio:16/9;overflow:hidden;cursor:pointer;max-width:none;margin:0;box-shadow:none}
.beto-service--regarder .vhero__player img{width:100%;height:100%;object-fit:cover;opacity:.75}
.beto-service--regarder .vhero__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.beto-service--regarder .vhero__play-circle{width:64px;height:64px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;transition:transform .2s}
.beto-service--regarder .vhero__player:hover .vhero__play-circle{transform:scale(1.08)}
.beto-service--regarder .vhero__play-circle svg{width:28px;height:28px;color:#fff;margin-left:3px}
.beto-service--regarder .vhero__duration{position:absolute;bottom:12px;right:12px;padding:4px 8px;background:rgba(0,0,0,.8);font:600 .6875rem/1 var(--sans);color:#fff}
.beto-service--regarder .vhero__body{display:flex;flex-direction:column;padding-top:4px}
.beto-service--regarder .vhero__badge{display:inline-block;font:700 .6875rem/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:10px;padding:0;background:none}
.beto-service--regarder .vhero__title{font:800 1.75rem/1.2 var(--serif);color:var(--txt);margin-bottom:12px;max-width:none}
.beto-service--regarder .vhero__title a:hover{color:var(--accent)}
.beto-service--regarder .vhero__excerpt{font:400 1rem/1.65 var(--ui);color:var(--txt-3);margin-bottom:14px}
.beto-service--regarder .vhero__meta{font:400 .75rem/1 var(--ui);color:var(--muted);text-transform:uppercase;letter-spacing:.02em}
.beto-service--regarder .vhero__meta strong{color:var(--txt);font-weight:600}
.beto-service--regarder .vhero__embed{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}
.beto-service--regarder .vhero__embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}

/* ── Reels / Stories Carousel ── */
.reels{max-width:var(--page);margin:0 auto;padding:28px 20px 0}
.reels__hd{font:800 1rem/1 var(--sans);color:var(--accent);text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between}
.reels__nav{display:flex;gap:6px}
.reels__nav button{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:center;color:var(--txt-3);transition:all .15s}
.reels__nav button:hover{border-color:var(--txt);color:var(--txt)}
.reels__track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px}
.reels__track::-webkit-scrollbar{display:none}
.reel{flex:0 0 160px;scroll-snap-align:start;position:relative;aspect-ratio:9/16;overflow:hidden;cursor:pointer;background:#000}
.reel img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.reel:hover img{transform:scale(1.05)}
.reel__overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.75) 0%,transparent 40%);display:flex;flex-direction:column;justify-content:flex-end;padding:14px 10px}
.reel__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}
.reel:hover .reel__play{opacity:1}
.reel__play svg{width:16px;height:16px;color:#fff;margin-left:2px}
.reel__dur{position:absolute;top:10px;right:10px;padding:3px 6px;background:rgba(0,0,0,.7);font:600 .5625rem/1 var(--sans);color:#fff;display:flex;align-items:center;gap:3px}
.reel__dur svg{width:8px;height:8px}
.reel__tag{font:700 .5625rem/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.reel__text{font:700 .8125rem/1.25 var(--sans);color:#fff;margin-top:3px}
.reel__views{font:400 .625rem/1 var(--ui);color:rgba(255,255,255,.6);margin-top:4px}

/* ── Format Navigation (dashboard tabs) ── */
.vfmt-nav{max-width:var(--page);margin:0 auto;padding:0 20px}
.vfmt-nav__in{display:flex;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}
.vfmt-nav__in::-webkit-scrollbar{display:none}
.vfmt-nav__item{display:flex;align-items:center;gap:8px;padding:14px 20px;white-space:nowrap;scroll-snap-align:start;font:600 .8125rem/1 var(--sans);text-transform:uppercase;letter-spacing:.04em;color:var(--txt-3);border-bottom:3px solid transparent;transition:all .15s;flex-shrink:0}
.vfmt-nav__item svg{width:16px;height:16px;flex-shrink:0}
.vfmt-nav__item:hover{color:var(--navy);border-bottom-color:var(--border)}
.vfmt-nav__item--active{color:var(--navy);border-bottom-color:var(--red);font-weight:700}
.vfmt-nav__item--active svg{color:var(--red)}

/* ── Video Category Section ── */
.vcat{max-width:var(--page);margin:0 auto;padding:0 20px 16px}
.vcat__hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.vcat__title{font:800 1rem/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--navy)}
.vcat__more{font:600 .75rem/1 var(--sans);text-transform:uppercase;letter-spacing:.04em;color:var(--accent);display:flex;align-items:center;gap:4px;transition:color .15s}
.vcat__more:hover{color:var(--red-dk)}
.vcat__more svg{width:12px;height:12px}
.vcat__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* ── Video Card ── */
.vcard{display:flex;flex-direction:column}
.vcard__thumb{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden;cursor:pointer}
.vcard__thumb img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity .2s}
.vcard__thumb:hover img{opacity:1}
.vcard__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}
.vcard__thumb:hover .vcard__play{opacity:1}
.vcard__play-btn{width:40px;height:40px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center}
.vcard__play-btn svg{width:18px;height:18px;color:#fff;margin-left:2px}
.vcard__dur{position:absolute;bottom:8px;right:8px;padding:3px 6px;background:rgba(0,0,0,.8);font:600 .625rem/1 var(--sans);color:#fff}
.vcard__body{padding-top:10px}
.vcard__tag{font:700 .625rem/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:4px}
.vcard__title{font:700 .9375rem/1.3 var(--serif);color:var(--txt);margin-bottom:6px}
.vcard__title a:hover{color:var(--accent)}
.vcard__meta{font:400 .6875rem/1 var(--ui);color:var(--muted)}

/* ── Alternate format badges (video↔podcast overlap) ── */
.vcard__alt-format{position:absolute;top:8px;left:8px;width:28px;height:28px;border-radius:50%;background:rgba(108,92,231,.9);display:flex;align-items:center;justify-content:center;color:#fff}
.vcard__alt-format svg{width:14px;height:14px}
.ep__alt-format{display:inline-flex;align-items:center;margin-left:6px;color:var(--navy);vertical-align:middle}
.ep__alt-format svg{width:12px;height:12px}

/* ── Main + Sidebar layout ── */
.vid-main{max-width:var(--page);margin:0 auto;padding:0 20px 40px}
.vid-main__grid{display:grid;grid-template-columns:1fr var(--side-w);gap:0 var(--side-gap);align-items:start}

/* ── Sidebar ── */
.aside{padding-top:0;position:sticky;top:20px;align-self:start}
.aside__block{margin-bottom:28px;background:#fff;border:1px solid var(--border-lt);overflow:hidden}
.aside__title{font:800 .75rem/1 var(--sans);text-transform:uppercase;color:#fff;letter-spacing:.06em;padding:12px 16px;margin:0;background:var(--navy);display:flex;align-items:center;gap:8px}
.aside__title svg{width:14px;height:14px;flex-shrink:0}
.aside__title--red{background:var(--red)}
.aside__title--blue{background:var(--blue)}
.aside__mostread{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-lt);transition:background .12s}
.aside__mostread:last-child{border-bottom:none}
.aside__mostread:hover{background:var(--bg-lt)}
.aside__num{font:900 1.5rem/1 var(--sans);color:var(--blue);flex-shrink:0;min-width:24px}
.aside__mostread a{font:500 .875rem/1.4 var(--ui);color:var(--txt)}
.aside__mostread a:hover{color:var(--blue)}
.aside__nl{background:var(--bg-lt);padding:20px;margin-bottom:28px;border:1px solid var(--border-lt)}
.aside__nl-title{font:800 14px/1.2 var(--sans);text-transform:uppercase;color:var(--txt);margin-bottom:6px}
.aside__nl-text{font:400 13px/1.5 var(--ui);color:var(--txt-3);margin-bottom:14px}
.aside__nl-form{display:flex;gap:0}
.aside__nl-input{flex:1;padding:10px 12px;font:400 13px/1 var(--ui);border:1px solid var(--border);border-right:none;outline:none}
.aside__nl-input:focus{border-color:var(--txt)}
.aside__nl-btn{padding:10px 16px;font:700 .6875rem/1 var(--sans);text-transform:uppercase;letter-spacing:.04em;background:var(--accent);color:#fff;border:none;cursor:pointer;transition:background .15s}
.aside__nl-btn:hover{background:var(--accent-dk)}
.aside__ad{background:var(--bg-lt);border:1px dashed var(--border);padding:80px 20px;text-align:center;font:400 .6875rem/1 var(--ui);color:var(--muted);margin-bottom:28px;text-transform:uppercase;letter-spacing:.08em}

/* ── BETO Series Grid ── */
.vseries{padding:0 0 32px}
.vseries__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px}
.vseries__card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border:1px solid var(--border-lt);transition:all .15s;text-decoration:none}
.vseries__card:hover{border-color:var(--navy);box-shadow:0 4px 12px rgba(0,0,0,.06)}
.vseries__icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--navy);color:#fff}
.vseries__icon svg{width:20px;height:20px;margin-left:2px}
.vseries__card--red .vseries__icon{background:var(--red)}
.vseries__card--blue .vseries__icon{background:var(--blue)}
.vseries__card--gold .vseries__icon{background:var(--gold)}
.vseries__card--gold .vseries__icon svg{color:var(--navy)}
.vseries__card--green .vseries__icon{background:#27ae60}
.vseries__body{flex:1;min-width:0}
.vseries__name{font:700 1rem/1.2 var(--serif);color:var(--navy);margin-bottom:4px}
.vseries__desc{font:400 .8125rem/1.4 var(--ui);color:var(--txt-3)}
.vseries__arrow{width:16px;height:16px;color:var(--muted);flex-shrink:0;transition:transform .15s}
.vseries__card:hover .vseries__arrow{transform:translateX(3px);color:var(--navy)}

/* ── Regarder Page Responsive ── */
@media(max-width:1100px){
	.vid-main__grid{grid-template-columns:1fr;gap:0}
	.beto-service--regarder .aside{margin-top:36px;padding-top:24px;border-top:3px solid var(--navy);position:static}
}
@media(max-width:1000px){
	.beto-service--regarder .vhero__grid{grid-template-columns:1fr;gap:16px}
	.vcat__grid{grid-template-columns:repeat(3,1fr)}
	.vseries__grid{grid-template-columns:1fr}
}
@media(max-width:768px){
	.beto-service--regarder .vhero__title{font-size:1.5rem}
	.vcat__grid{grid-template-columns:repeat(2,1fr)}
	.reel{flex:0 0 130px}
	.reels__track{gap:10px}
	.vfmt-nav__item{padding:12px 14px;font-size:.75rem}
	.vfmt-nav__item svg{width:14px;height:14px}
}
@media(max-width:480px){
	.beto-service--regarder .vhero__title{font-size:1.25rem}
	.vcat__grid{grid-template-columns:1fr}
	.vfmt-nav__item{padding:10px 10px;font-size:.6875rem}
}


/* ============================================================
   ÉCOUTER PAGE — Tableau de bord podcasts
   ============================================================ */

/* ── Podcast Hero — featured episode ── */
.phero{max-width:var(--page);margin:0 auto;padding:40px 20px 0}
.phero__grid{display:grid;grid-template-columns:280px 1fr;gap:32px;align-items:center}
.phero__cover{width:280px;height:280px;object-fit:cover;box-shadow:0 8px 32px rgba(0,0,0,.15)}
.phero__show{font:700 .6875rem/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:10px}
.phero__title{font:800 2rem/1.15 var(--serif);color:var(--txt);margin-bottom:12px;letter-spacing:-.01em}
.phero__excerpt{font:400 1.0625rem/1.65 var(--ui);color:var(--txt-3);max-width:580px;margin-bottom:20px}
.phero__meta{font:400 .75rem/1 var(--ui);color:var(--muted);margin-bottom:20px;text-transform:uppercase;letter-spacing:.02em}
.phero__meta strong{color:var(--txt);font-weight:600}
.phero__player{display:flex;align-items:center;gap:14px;background:var(--bg-lt);padding:14px 20px}
.phero__play-btn{width:44px;height:44px;border-radius:50%;background:var(--red);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}
.phero__play-btn:hover{background:var(--red-dk)}
.phero__play-btn svg{width:20px;height:20px;color:#fff;margin-left:2px}
.phero__wave{flex:1;height:40px;background:linear-gradient(90deg,var(--border-lt) 0%,var(--navy) 35%,var(--border-lt) 35.5%);opacity:.3}
.phero__time{font:600 .75rem/1 var(--sans);color:var(--muted);flex-shrink:0;white-space:nowrap}
.phero__embed{margin-top:12px}
.phero__embed iframe{width:100%;border:none;border-radius:8px;min-height:152px}

/* ── Shows Grid — podcast series cards ── */
.shows{max-width:var(--page);margin:0 auto;padding:0 20px 8px}
.shows__title{font:800 1rem/1 var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--navy);margin-bottom:24px}
.shows__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.show{display:flex;flex-direction:column}
.show__cover{width:100%;aspect-ratio:1/1;object-fit:cover;margin-bottom:14px;box-shadow:0 4px 16px rgba(0,0,0,.1)}
.show__name{font:700 1.0625rem/1.25 var(--serif);color:var(--txt);margin-bottom:4px}
.show__name:hover{color:var(--accent)}
.show__desc{font:400 .8125rem/1.5 var(--ui);color:var(--txt-3);margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.show__freq{font:600 .6875rem/1 var(--sans);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}

/* ── Latest Episodes — main + sidebar ── */
.pod-main{max-width:var(--page);margin:0 auto;padding:0 20px 40px}
.pod-main__grid{display:grid;grid-template-columns:1fr var(--side-w);gap:0 var(--side-gap);align-items:start}
.pod-main__title{font:800 1rem/1 var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--navy);margin-bottom:20px}

/* ── Episode row ── */
.ep{display:grid;grid-template-columns:80px 1fr auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--border-lt)}
.ep:first-of-type{padding-top:0}
.ep__cover{width:80px;height:80px;object-fit:cover;flex-shrink:0}
.ep__show{font:700 .625rem/1 var(--sans);text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:4px}
.ep__title{font:600 .9375rem/1.35 var(--ui);color:var(--txt);margin-bottom:4px;display:block}
.ep__title:hover{color:var(--accent)}
.ep__meta{font:400 .6875rem/1 var(--ui);color:var(--muted)}
.ep__play{width:36px;height:36px;border-radius:50%;background:var(--bg-lt);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--txt-3);flex-shrink:0;cursor:pointer;transition:all .15s}
.ep__play:hover{background:var(--red);color:#fff;border-color:var(--red)}
.ep__play svg{width:14px;height:14px;margin-left:1px}

/* ── Platforms widget ── */
.platforms{padding:16px}
.platforms__item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-lt);transition:color .15s}
.platforms__item:last-child{border-bottom:none}
.platforms__item:hover{color:var(--accent)}
.platforms__icon{width:32px;height:32px;border-radius:50%;background:var(--bg-lt);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--txt-3)}
.platforms__icon svg{width:16px;height:16px}
.platforms__name{font:600 .875rem/1 var(--ui);color:var(--txt)}

/* ── Écouter Page Responsive ── */
@media(max-width:1100px){
	.pod-main__grid{grid-template-columns:1fr;gap:0}
	.pod-main__grid .aside{position:static}
}
@media(max-width:1000px){
	.shows__grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
	.phero__grid{grid-template-columns:1fr;gap:20px;text-align:center}
	.phero__cover{width:200px;height:200px;margin:0 auto}
	.phero__excerpt{margin-left:auto;margin-right:auto}
	.phero__title{font-size:1.5rem}
	.shows__grid{grid-template-columns:repeat(2,1fr)}
	.ep{grid-template-columns:60px 1fr auto}
	.ep__cover{width:60px;height:60px}
}
@media(max-width:480px){
	.phero__title{font-size:1.25rem}
	.phero__cover{width:160px;height:160px}
	.shows__grid{grid-template-columns:1fr 1fr}
	.ep{grid-template-columns:1fr auto}
	.ep__cover{display:none}
}

/* ═══════════════════════════════════════
   PASSE 11.3 — FILTERS ENHANCEMENTS
   (chips statut/local, reset, sr-only, 2e ligne)
   ═══════════════════════════════════════ */

.sr-only {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

.filters__row--extra {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	padding-top: 10px;
	margin-top: 10px;
	border-top: 1px solid var(--border-lt, #e9e9e9);
}

.filters__group {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.filters__group-label {
	font: 600 11px/1 var(--sans, 'Barlow Semi Condensed', sans-serif);
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--muted, #999);
}

.filters__chips {
	display: inline-flex;
	gap: 4px;
}

.filters__chip {
	display: inline-block;
	padding: 6px 12px;
	font: 500 12px/1 var(--ui, 'Barlow', sans-serif);
	color: var(--txt-3, #666);
	border: 1px solid var(--border, #d6d6d6);
	background: #fff;
	text-decoration: none;
	transition: all .15s;
}
.filters__chip:hover { color: var(--txt, #121212); border-color: var(--txt-3, #666); }
.filters__chip.on {
	background: var(--txt, #121212);
	color: #fff;
	border-color: var(--txt, #121212);
	font-weight: 700;
}

.filters__sort {
	padding: 6px 10px;
	font: 500 12px/1 var(--ui, 'Barlow', sans-serif);
	color: var(--txt, #121212);
	background: #fff;
	border: 1px solid var(--border, #d6d6d6);
	cursor: pointer;
}
.filters__sort:focus { outline: none; border-color: var(--blue, #0060df); }

.filters__reset {
	margin-left: auto;
	font: 500 12px/1 var(--ui, 'Barlow', sans-serif);
	color: var(--muted, #999);
	text-decoration: underline;
}
.filters__reset:hover { color: var(--red, #c0392b); }

@media (max-width: 700px) {
	.filters__row--extra { gap: 10px; }
	.filters__reset { margin-left: 0; width: 100%; text-align: right; }
}

/* ═══════════════════════════════════════════════════════════════════
   PASSE 11.4 — Row enhancements (countdown J-X, Officiel badge, PDF)
   + advanced filters row (expérience / études / salaire / budget)
   Marqueur : UI-11-4-01
   ═══════════════════════════════════════════════════════════════════ */

/* J-X countdown badge (arow-ao) — next to date on AO rows. */
.arow__countdown {
	display: inline-block;
	margin-top: 4px;
	padding: 2px 8px;
	font: 700 11px/1.4 var(--sans, 'Barlow Semi Condensed', sans-serif);
	color: #065f46;
	background: #ecfdf5;
	border-radius: 3px;
	letter-spacing: .02em;
	text-transform: uppercase;
}
.arow__countdown--warning {
	color: #92400e;
	background: #fef3c7;
}
.arow__countdown--urgent {
	color: #fff;
	background: var(--red, #ce1021);
	animation: beto-pulse 1.6s ease-in-out infinite;
}
@keyframes beto-pulse {
	0%, 100% { opacity: 1; }
	50%      { opacity: 0.75; }
}
@media (prefers-reduced-motion: reduce) {
	.arow__countdown--urgent { animation: none; }
}

/* Officiel badge (arow-communique) — left-pinned above title. */
.arow__badge--officiel {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-bottom: 6px;
	padding: 3px 8px;
	font: 700 10px/1 var(--sans, 'Barlow Semi Condensed', sans-serif);
	color: #fff;
	background: var(--navy, #24265b);
	text-transform: uppercase;
	letter-spacing: .05em;
}
.arow__badge--officiel svg { fill: #fff; }

/* PDF tag (arow-communique) — right side. */
.arow__tag--pdf {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: #fee2e2;
	color: #991b1b;
	font-weight: 700;
}
.arow__tag--pdf svg { fill: #991b1b; }

/* Advanced filter row (emploi) — 3rd row, fully responsive. */
.filters__row--advanced {
	border-top: 1px dashed var(--border-lt, #e9e9e9);
	padding-top: 10px;
	margin-top: 4px;
}

/* Pagination — paginate_links() output (BEM-less, inherits WP markup). */
.pager .page-numbers {
	display: inline-block;
	padding: 8px 12px;
	margin: 0 2px;
	font: 600 13px/1 var(--ui, 'Barlow', sans-serif);
	color: var(--txt-2, #333);
	background: #fff;
	border: 1px solid var(--border, #d6d6d6);
	text-decoration: none;
	transition: border-color .15s, color .15s;
}
.pager .page-numbers:hover {
	border-color: var(--navy, #24265b);
	color: var(--navy, #24265b);
}
.pager .page-numbers.current {
	background: var(--navy, #24265b);
	color: #fff;
	border-color: var(--navy, #24265b);
}
.pager .page-numbers.dots {
	border: 0;
	background: transparent;
}
.pager .page-numbers.prev,
.pager .page-numbers.next {
	font-weight: 700;
}


