/* ═══════════════════════════════════════════
   MALICK AMADOU — components.css
   ═══════════════════════════════════════════ */

/* ── NAV ── */
.ma-nav {
	position: fixed; top: 0; left: 0; right: 0; z-index: 100;
	height: 72px;
	background: rgba(250,248,243,.92);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--border);
}
.ma-nav__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	height: 100%; padding: 0 5%;
	display: flex; align-items: center; justify-content: space-between; gap: 32px;
}
.ma-nav__logo {
	display: flex; align-items: center; padding: 5px 0;
	flex-shrink: 0; max-height: calc(72px - 10px);
	font-family: var(--ma-font-stack); font-size: 20px; font-weight: 500;
	letter-spacing: .04em; color: var(--dark); white-space: nowrap;
}
.ma-nav__logo span { color: var(--gold); }
/* Lien généré par the_custom_logo() */
.ma-nav__logo a,
.ma-nav__logo .custom-logo-link {
	display: flex; align-items: center; line-height: 0;
}
/* Image logo — contrainte par la variable Customizer */
.ma-nav__logo img,
.ma-nav__logo a img,
.custom-logo {
	height: var(--ma-logo-height, 62px) !important;
	width: auto !important;
	max-height: var(--ma-logo-height, 62px) !important;
	object-fit: contain; display: block;
}
.ma-nav__links { display: flex; gap: 36px; list-style: none; margin: 0 auto; }
.ma-nav__links a {
	font-family: var(--ma-font-stack);
	font-size: 13px; font-weight: 400; letter-spacing: .08em;
	text-transform: uppercase; color: var(--muted); transition: color .2s;
}
.ma-nav__links a:hover, .ma-nav__links .current-menu-item a { color: var(--navy); }
.ma-nav__cta {
	font-family: var(--ma-font-stack);
	font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase;
	color: var(--navy); border: 1px solid var(--navy); padding: 9px 20px;
	white-space: nowrap; transition: all .25s;
	border-radius: var(--ma-radius-btn);
}
.ma-nav__cta:hover { background: var(--navy); color: #fff; }
.ma-nav__burger { display: none; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 4px; }
.ma-nav__burger span { display: block; width: 22px; height: 1.5px; background: var(--dark); transition: all .3s; }
.ma-nav--scrolled { box-shadow: 0 2px 20px rgba(0,0,0,.06); border-bottom-color: rgba(18,45,91,.2); }

/* ── HERO ── */
.ma-hero {
	min-height: 100vh;
	display: grid; grid-template-columns: 3fr 2fr;
	background: var(--dark);
	padding-top: 2vw;
}
.ma-hero--no-photo {
	grid-template-columns: 1fr;
}
.ma-hero--no-photo .ma-hero__left {
	max-width: 860px;
}
.ma-hero__bg-overlay {
	position: absolute; inset: 0; z-index: 0; pointer-events: none;
}
.ma-hero__left,
.ma-hero__right { position: relative; z-index: 1; }
.ma-hero__left {
	display: flex; flex-direction: column; justify-content: center;
	padding: var(--ma-padding-y) 7% 80px 7vw;
	position: relative; overflow: hidden;
}
.ma-hero__left::before {
	content: '';
	position: absolute; inset: 0;
	background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='60' height='60'><circle cx='30' cy='30' r='.5' fill='rgba(184,150,90,.3)'/></svg>");
	pointer-events: none; opacity: 0.5;
}
.ma-hero__eyebrow {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .2em; text-transform: uppercase;
	color: var(--gold); margin-bottom: 24px;
	display: flex; align-items: center; gap: 12px;
}
.ma-hero__eyebrow::before { content: ''; display: block; width: 32px; height: 1px; background: var(--gold); }
.ma-hero__name {
	font-family: var(--ma-font-stack);
	font-size: clamp(52px, 6vw, 80px); font-weight: 300; line-height: 1.05;
	color: #fff; margin-bottom: 8px;
}
.ma-hero__name strong { font-weight: 600; color: var(--gold-light); }
.ma-hero__subtitle {
	font-family: var(--ma-font-stack);
	font-size: clamp(18px, 2.2vw, 26px); font-weight: 300; font-style: italic;
	color: rgba(255,255,255,.55); margin-bottom: 40px; line-height: 1.4;
}
.ma-hero__divider { width: 48px; height: 1px; background: var(--gold); margin-bottom: 32px; }
.ma-hero__desc {
	font-family: var(--ma-font-stack);
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height); font-weight: 300;
	color: rgba(255,255,255,.6); max-width: 420px; margin-bottom: 48px;
}
.ma-hero__actions { display: flex; gap: 16px; flex-wrap: wrap; }
.ma-hero__right { position: relative; overflow: hidden; }
.ma-hero__img {
	width: 100%; height: 100%;
	object-fit: cover; object-position: center top;
	display: block;
	border-radius: var(--ma-radius-img);
}
.ma-hero__img-bg {
	position: absolute; inset: 0;
	background: linear-gradient(160deg, #2A2010 0%, #1A1208 40%, #0E0A05 100%);
}
.ma-hero__img-inner {
	position: absolute; inset: 0;
	background: linear-gradient(to bottom, transparent 40%, rgba(14,14,14,.6));
	z-index: 1;
}
.ma-hero__img-placeholder {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	flex-direction: column; gap: 8px; z-index: 1;
	border-radius: var(--ma-radius-img);
}
.ma-hero__photo-circle {
	width: 160px; height: 160px; border-radius: 50%;
	border: 1px solid rgba(184,150,90,.3);
	display: flex; align-items: center; justify-content: center;
}
.ma-hero__photo-label {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .15em; text-transform: uppercase;
	color: rgba(184,150,90,.5);
}
.ma-hero__overlay {
	position: absolute; inset: 0;
	background: linear-gradient(to bottom, transparent 40%, rgba(14,14,14,.6));
}
/* ── NEWSLETTER FORM (bloc dédié) ── */
.ma-newsletter-form { display: flex; gap: 8px; flex-wrap: wrap; }
.ma-newsletter-form__input {
	flex: 1; min-width: 200px;
	font-family: var(--ma-font-stack);
	background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.2);
	color: #fff; padding: 14px 16px; font-size: 14px; font-weight: 300; outline: none;
	border-radius: var(--ma-radius-btn);
	transition: border-color .2s;
}
.ma-newsletter-form__input:focus { border-color: var(--navy); }
.ma-newsletter-form__input::placeholder { color: rgba(255,255,255,.4); }

/* ── BOUTONS ── */
.ma-btn {
	display: inline-block;
	font-family: var(--ma-font-stack);
	font-size: 12px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase;
	padding: 14px 32px; transition: all .25s; cursor: pointer; border: none;
	border-radius: var(--ma-radius-btn);
}
.ma-btn--primary { background: var(--gold); color: #fff; }
.ma-btn--primary:hover { background: var(--gold-light); color: #fff; }
.ma-btn--outline { color: rgba(255,255,255,.7); border: 1px solid rgba(255,255,255,.2); background: transparent; }
.ma-btn--outline:hover { border-color: var(--gold); color: var(--gold); }
.ma-btn--dark { background: var(--dark); color: #fff; }
.ma-btn--dark:hover { background: var(--dark3); }
.ma-btn--navy { background: var(--navy); color: #fff; border-radius: var(--ma-radius-btn); }
.ma-btn--navy:hover { background: #1a3d7a; color: #fff; }

/* ── SECTION COMMUNE ── */
.ma-section { padding: var(--ma-padding-y) var(--ma-padding-x); max-width: var(--ma-max-width); margin: 0 auto; }
.ma-section--full { padding: var(--ma-padding-y) var(--ma-padding-x); }
.ma-section-label {
	font-family: var(--ma-font-stack);
	font-size: 10px; letter-spacing: .2em; text-transform: uppercase;
	color: var(--navy); margin-bottom: 16px;
	display: flex; align-items: center; gap: 10px;
}
.ma-section-label::before { content: ''; display: block; width: 24px; height: 1px; background: var(--navy); }
/* Sur fond sombre, les labels restent en gold */
.ma-hero .ma-section-label,
.ma-parcours .ma-section-label,
.ma-contact .ma-section-label,
.ma-newsletter-block .ma-section-label,
.ma-blog-hero .ma-section-label,
.ma-signature-analyses .ma-section-label,
.ma-single-header .ma-section-label,
.ma-related-posts .ma-section-label { color: var(--gold); }
.ma-hero .ma-section-label::before,
.ma-parcours .ma-section-label::before,
.ma-contact .ma-section-label::before,
.ma-newsletter-block .ma-section-label::before,
.ma-blog-hero .ma-section-label::before,
.ma-signature-analyses .ma-section-label::before,
.ma-single-header .ma-section-label::before,
.ma-related-posts .ma-section-label::before { background: var(--gold); }
.ma-section-title {
	font-family: var(--ma-font-stack);
	font-size: clamp(36px, 4vw, 52px); font-weight: 300; line-height: 1.1;
	color: var(--dark); margin-bottom: 16px;
}
.ma-section-title em { font-style: italic; color: var(--gold); }
.ma-section-title strong { font-weight: 700; color: var(--navy); font-style: normal; }
.ma-section-title--light strong { color: var(--gold-light); }
.ma-section-title--light { color: #fff; }

/* ── PROFIL ── */
.ma-profil { background: #fff; overflow: hidden; }
.ma-profil__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	padding: var(--ma-padding-y) var(--ma-padding-x) var(--ma-padding-y) var(--ma-padding-x);
	display: grid; grid-template-columns: 1fr 1.4fr; gap: 80px; align-items: center;
}
.ma-profil__img {
	aspect-ratio: 3/4; overflow: hidden;
	background: var(--gold-pale);
	position: relative;
	border-radius: var(--ma-radius-img);
}
.ma-profil__img img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--ma-radius-img); }
.ma-profil__img-placeholder {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	flex-direction: column; gap: 8px;
	color: var(--gold); opacity: .35;
	font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
	border-radius: var(--ma-radius-img);
}
.ma-profil__quote {
	font-family: var(--ma-font-stack);
	font-size: clamp(20px, 2.5vw, 28px); font-weight: 300; font-style: italic;
	color: var(--dark); line-height: 1.5; margin-bottom: 28px;
	padding-left: 24px; border-left: 2px solid var(--gold);
}
.ma-profil__text {
	font-family: var(--ma-font-stack);
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height);
	color: var(--muted); font-weight: 300; margin-bottom: 20px;
}
.ma-profil__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.ma-tag {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
	color: var(--gold); border: 1px solid var(--border); padding: 6px 14px;
	border-radius: var(--ma-radius-btn);
}

/* ── EXPERTISE ── */
.ma-expertise { background: var(--cream); padding: var(--ma-padding-y) 0; }
.ma-expertise__header { text-align: center; margin-bottom: 64px; padding: 0 7%; }
.ma-expertise__header .ma-section-label { justify-content: center; }
.ma-expertise__header .ma-section-label::before { display: none; }
.ma-expertise__grid {
	display: grid; grid-template-columns: repeat(4, 1fr);
	gap: 1%; padding: 0 7%;
	background: none;
}
.ma-expertise-card {
	background: #fff; padding: 40px 32px;
	transition: all .3s; cursor: default;
	position: relative; overflow: hidden;
	border-radius: 10px;
	border: 1px solid var(--border);
}
.ma-expertise-card::after {
	content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
	background: var(--gold); transform: scaleX(0); transition: transform .3s; transform-origin: left;
}
.ma-expertise-card:hover::after { transform: scaleX(1); }
.ma-expertise-card:hover { background: var(--dark); }
.ma-expertise-card:hover .ma-exp__num { color: rgba(255,255,255,.1); }
.ma-expertise-card:hover .ma-exp__title { color: #fff; }
.ma-expertise-card:hover .ma-exp__text { color: rgba(255,255,255,.45); }
.ma-exp__num {
	font-family: var(--ma-font-stack); font-size: 64px; font-weight: 300;
	color: var(--gold-pale); line-height: 1; margin-bottom: 16px; transition: color .3s;
}
.ma-exp__title {
	font-family: var(--ma-font-stack); font-size: 22px; font-weight: 500;
	color: var(--dark); margin-bottom: 12px; transition: color .3s;
}
.ma-exp__text {
	font-family: var(--ma-font-stack);
	font-size: 13px; line-height: 1.7; color: var(--muted);
	font-weight: 300; transition: color .3s;
}

/* ── PARCOURS ── */
.ma-parcours { background: var(--dark); padding: var(--ma-padding-y) var(--ma-padding-x); }
.ma-parcours__inner { max-width: var(--ma-max-width); margin: 0 auto; }
.ma-parcours__layout {
	display: grid; grid-template-columns: 1fr 2fr;
	gap: 80px; margin-top: 64px;
}
.ma-parcours__intro {
	font-family: var(--ma-font-stack);
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height);
	color: rgba(255,255,255,.45); font-weight: 300; margin-bottom: 36px;
}
.ma-aga-box {
	border: 1px solid var(--border); padding: 28px;
	border-radius: var(--ma-radius-card);
}
.ma-aga-box__label {
	font-family: var(--ma-font-stack);
	font-size: 10px; letter-spacing: .15em; text-transform: uppercase;
	color: var(--gold); margin-bottom: 10px;
}
.ma-aga-box__name {
	font-family: var(--ma-font-stack); font-size: 22px; font-weight: 500;
	color: #fff; margin-bottom: 8px; line-height: 1.3;
}
.ma-aga-box__desc {
	font-family: var(--ma-font-stack);
	font-size: 13px; color: rgba(255,255,255,.4);
	line-height: 1.7; font-weight: 300;
}
.ma-timeline { position: relative; padding-left: 32px; }
.ma-timeline::before {
	content: ''; position: absolute; left: 0; top: 8px; bottom: 0;
	width: 1px; background: var(--border);
}
.ma-tl-item { position: relative; margin-bottom: 44px; }
.ma-tl-item:last-child { margin-bottom: 0; }
.ma-tl-dot {
	position: absolute; left: -36px; top: 6px;
	width: 8px; height: 8px;
	border: 1px solid var(--navy); background: var(--dark); transform: rotate(45deg);
}
.ma-tl-year {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .12em; color: var(--gold); margin-bottom: 6px;
}
.ma-tl-role {
	font-family: var(--ma-font-stack); font-size: 20px; font-weight: 500;
	color: #fff; margin-bottom: 4px;
}
.ma-tl-org {
	font-family: var(--ma-font-stack);
	font-size: 13px; color: rgba(255,255,255,.4); font-weight: 300;
}
.ma-tl-desc {
	font-family: var(--ma-font-stack);
	font-size: 14px; line-height: 1.75; color: rgba(255,255,255,.55);
	font-weight: 300; margin-top: 10px;
}

/* Formation */
.ma-formation {
	margin-top: 56px;
	padding-top: 40px;
	border-top: 1px solid rgba(184,150,90,.2);
}
.ma-formation__grid {
	display: grid;
	grid-template-columns: 70% 30%;
	gap: 40px;
	align-items: stretch;
}
.ma-formation__list {
	margin-top: 20px;
	display: flex;
	flex-direction: column;
}
.ma-formation__item {
	padding-bottom: 24px;
	margin-bottom: 24px;
	border-bottom: 1px solid rgba(184,150,90,.15);
}
.ma-formation__item--last {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.ma-formation__period {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .12em; color: var(--gold); margin-bottom: 6px;
}
.ma-formation__degree {
	font-family: 'Cormorant Garamond', serif;
	font-size: 22px; font-weight: 500; color: #fff; margin-bottom: 4px; line-height: 1.2;
}
.ma-formation__school {
	font-family: var(--ma-font-stack);
	font-size: 14px; color: rgba(255,255,255,.4); font-weight: 300;
}

/* Encart CTA droite */
.ma-formation__right {
	display: flex;
	align-items: stretch;
}
.ma-formation__box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 16px;
	padding: 30px;
	width: 100%;
}
.ma-formation__box-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 24px; font-weight: 500; line-height: 1.2;
	color: #fff; margin: 0;
}
.ma-formation__box-text {
	font-family: var(--ma-font-stack);
	font-size: 14px; line-height: 1.75; font-weight: 300;
	color: rgba(255,255,255,.6); margin: 0;
}
.ma-formation__box-cta {
	display: inline-block;
	margin-top: 4px;
	padding: 12px 24px;
	background: var(--gold);
	border: none;
	font-family: var(--ma-font-stack);
	font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
	color: #0E0E0E; text-decoration: none;
	transition: opacity .2s;
}
.ma-formation__box-cta:hover { opacity: .85; color: #0E0E0E; }
/* Mode light */
.ma-formation__box--light .ma-formation__box-title { color: #0E0E0E; }
.ma-formation__box--light .ma-formation__box-text  { color: #6B6560; }

/* ── MÉDIAS ── */
.ma-medias { background: #fff; padding: var(--ma-padding-y) var(--ma-padding-x); }
.ma-medias__inner { max-width: var(--ma-max-width); margin: 0 auto; }
.ma-medias__header {
	display: flex; justify-content: space-between;
	align-items: flex-end; margin-bottom: 40px; flex-wrap: wrap; gap: 16px;
}
.ma-medias__tabs { display: flex; gap: 4px; margin-bottom: 40px; flex-wrap: wrap; }
.ma-tab {
	font-family: var(--ma-font-stack);
	font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
	padding: 10px 20px; border: 1px solid var(--border);
	background: none; cursor: pointer; color: var(--muted);
	transition: all .2s;
	border-radius: var(--ma-radius-btn);
}
.ma-tab.is-active, .ma-tab:hover { background: var(--dark); color: #fff; border-color: var(--dark); }
.ma-medias__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ma-medias__empty {
	grid-column: 1 / -1; text-align: center;
	padding: 60px 0;
	font-family: var(--ma-font-stack);
	font-size: 15px; color: var(--muted); font-weight: 300;
	font-style: italic;
}
.ma-medias__context-note {
	font-family: var(--ma-font-stack);
	font-size: 13px; color: var(--muted); font-style: italic;
	margin-bottom: 24px; padding: 12px 16px;
	border-left: 2px solid var(--gold);
	display: none;
}
.ma-medias__context-note.is-visible { display: block; }
.ma-media-card {
	border: 1px solid var(--border); overflow: hidden;
	transition: all .25s; cursor: pointer;
	border-radius: var(--ma-radius-card);
}
.ma-media-card:hover {
	border-color: var(--navy);
	transform: translateY(-4px);
	box-shadow: 0 12px 40px rgba(18,45,91,.1);
}
.ma-media-card__thumb {
	aspect-ratio: 16/9; background: var(--gold-pale);
	display: flex; align-items: center; justify-content: center;
	position: relative; overflow: hidden;
}
.ma-media-card__thumb img {
	width: 100%; height: 100%; object-fit: cover; transition: transform .4s;
	border-radius: var(--ma-radius-img);
}
.ma-media-card:hover .ma-media-card__thumb img { transform: scale(1.04); }
.ma-media-card__badge {
	position: absolute; top: 12px; left: 12px;
	font-family: var(--ma-font-stack);
	font-size: 10px; letter-spacing: .1em; text-transform: uppercase;
	background: var(--dark); color: var(--gold); padding: 4px 10px;
}
/* Badges distincts par type éditorial */
.ma-badge--tribune  { background: var(--navy); color: #fff; }
.ma-badge--interview { background: var(--dark); color: var(--gold); }
.ma-media-card__body { padding: 20px; }
.ma-media-card__source {
	font-family: var(--ma-font-stack);
	font-size: 10px; letter-spacing: .12em; text-transform: uppercase;
	color: var(--gold); margin-bottom: 8px;
}
.ma-media-card__title {
	font-family: var(--ma-font-stack); font-size: 18px; font-weight: 500;
	color: var(--dark); line-height: 1.3; margin-bottom: 8px;
}
.ma-media-card__meta {
	font-family: var(--ma-font-stack);
	font-size: 12px; color: var(--muted);
}

/* ── CONTACT ── */
.ma-contact {
	background: var(--dark);
	display: grid; grid-template-columns: 1fr 1fr;
}
.ma-contact--dark-black { background: var(--dark); }
.ma-contact--dark-navy  { background: var(--navy); }
.ma-contact--light      { background: #fff; }
.ma-contact__left {
	padding: var(--ma-padding-y) 10%;
	border-right: 1px solid var(--border);
}
.ma-contact__right { padding: var(--ma-padding-y) 10%; }

/* Mode light — adapter les textes */
.ma-contact--light .ma-contact__intro   { color: var(--muted); }
.ma-contact--light .ma-ctype            { color: var(--dark); }
.ma-contact--light .ma-ctype__dot       { background: var(--gold); }
.ma-contact--light .ma-social-link      { color: var(--navy); border-color: var(--border); }
.ma-contact--light .ma-social-link:hover{ background: var(--navy); color: #fff; border-color: var(--navy); }
.ma-contact--light .ma-section-label    { color: var(--navy); }
.ma-contact--light .ma-section-label::before { background: var(--navy); }
.ma-contact--light .ma-form__label      { color: var(--muted); }
.ma-contact--light .ma-form__input,
.ma-contact--light .ma-form__select,
.ma-contact--light .ma-form__textarea   { background: #f8f8f8; border-color: var(--border); color: var(--dark); }
.ma-contact--light .ma-form__input:focus,
.ma-contact--light .ma-form__select:focus,
.ma-contact--light .ma-form__textarea:focus { border-color: var(--navy); }
.ma-contact__intro {
	font-family: var(--ma-font-stack);
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height);
	color: rgba(255,255,255,.45); font-weight: 300; margin: 16px 0 48px;
}
.ma-contact__types { display: flex; flex-direction: column; gap: 12px; margin-bottom: 48px; }
.ma-ctype {
	display: flex; align-items: center; gap: 14px;
	font-family: var(--ma-font-stack);
	font-size: 13px; color: rgba(255,255,255,.55);
}
.ma-ctype__dot { width: 6px; height: 6px; background: var(--gold); flex-shrink: 0; }
.ma-contact__socials { display: flex; gap: 16px; flex-wrap: wrap; }
.ma-social-link {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .1em; text-transform: uppercase;
	color: var(--gold); border: 1px solid var(--border); padding: 10px 18px;
	transition: all .2s;
	border-radius: var(--ma-radius-btn);
}
.ma-social-link:hover { background: var(--gold); color: #fff; border-color: var(--gold); }

/* Formulaire */
.ma-form__group { margin-bottom: 24px; }
.ma-form__label {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .1em; text-transform: uppercase;
	color: rgba(255,255,255,.35); display: block; margin-bottom: 8px;
}
.ma-form__input,
.ma-form__select,
.ma-form__textarea {
	width: 100%;
	font-family: var(--ma-font-stack);
	background: rgba(255,255,255,.04);
	border: 1px solid rgba(255,255,255,.1);
	color: #fff; padding: 14px 16px;
	font-size: 14px; font-weight: 300;
	transition: border-color .2s; outline: none;
	border-radius: var(--ma-radius-btn);
}
.ma-form__input:focus,
.ma-form__select:focus,
.ma-form__textarea:focus { border-color: var(--gold); }
.ma-form__select { appearance: none; cursor: pointer; }
.ma-form__select option { background: var(--dark); }
.ma-form__textarea { height: 120px; resize: vertical; }
.ma-form__submit {
	width: 100%; background: var(--gold); color: #fff; border: none;
	padding: 16px;
	font-family: var(--ma-font-stack);
	font-size: 12px; letter-spacing: .12em; text-transform: uppercase;
	font-weight: 500; cursor: pointer; transition: background .2s; margin-top: 8px;
	border-radius: var(--ma-radius-btn);
}
.ma-form__submit:hover { background: var(--gold-light); }
.ma-form__error {
	display: none; font-size: 11px; color: #c0392b;
	margin-top: 4px;
}
.ma-form__input[aria-invalid="true"],
.ma-form__textarea[aria-invalid="true"] {
	border-color: #c0392b;
}
.ma-form__submit.is-loading {
	opacity: .75; cursor: wait;
	background-image: linear-gradient(90deg, transparent 25%, rgba(255,255,255,.15) 50%, transparent 75%);
	background-size: 200% 100%;
	animation: ma-btn-loading 1.2s infinite linear;
}
@keyframes ma-btn-loading {
	0%   { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}
.ma-form__feedback {
	margin-top: 12px; font-size: 13px; padding: 10px 14px;
	display: none;
}
.ma-form__feedback--success { background: rgba(184,150,90,.1); color: var(--gold); border: 1px solid var(--border); }
.ma-form__feedback--error { background: rgba(220,50,50,.1); color: #e08080; border: 1px solid rgba(220,50,50,.2); }

/* ── FOOTER ── */
.ma-footer {
	background: var(--dark2); border-top: 1px solid var(--border);
	padding: 32px var(--ma-padding-x);
}
.ma-footer__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px;
}
.ma-footer__logo { display: inline-flex; align-items: center; flex-shrink: 0; }
.ma-footer__logo span { color: var(--gold); }
.ma-footer__logo-img {
	height: 60px; width: auto; max-width: 200px;
	object-fit: contain;
	filter: brightness(0) invert(1);
	mix-blend-mode: screen;
}
.ma-footer__links { display: flex; gap: 24px; list-style: none; }
.ma-footer__links a {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
	color: rgba(255,255,255,.3); transition: color .2s;
}
.ma-footer__links a:hover { color: var(--gold); }
.ma-footer__copy {
	font-family: var(--ma-font-stack);
	font-size: 12px; color: #fff; letter-spacing: .03em;
}

/* Bouton retour en haut */
.ma-back-to-top {
	position: fixed; bottom: 32px; right: 32px; z-index: 900;
	width: 44px; height: 44px;
	background: var(--gold); color: #fff; border: none;
	display: flex; align-items: center; justify-content: center;
	cursor: pointer; opacity: 0; pointer-events: none;
	transform: translateY(12px);
	transition: opacity .3s, transform .3s;
	border-radius: var(--ma-radius-btn);
}
.ma-back-to-top.is-visible {
	opacity: 1; pointer-events: auto; transform: translateY(0);
}
.ma-back-to-top:hover { background: var(--gold-light); }
.ma-back-to-top:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }

/* ── NEWSLETTER BLOCK ── */
.ma-newsletter-block {
	background: var(--dark); padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-newsletter-block__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: flex; flex-direction: column; align-items: center; text-align: center;
}
.ma-newsletter-block__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(28px, 3vw, 42px); font-weight: 300; color: #fff;
	margin-bottom: 12px;
}
.ma-newsletter-block__sub {
	font-family: var(--ma-font-stack);
	font-size: var(--ma-font-size-base); color: rgba(255,255,255,.45); margin-bottom: 32px;
}
.ma-newsletter-block .ma-newsletter-form { justify-content: center; max-width: 500px; width: 100%; }

/* ── COOKIE BANNER ── */
.ma-cookie-banner {
	position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999;
	background: var(--dark2); border-top: 1px solid var(--border);
	padding: 20px var(--ma-padding-x);
	display: none;
}
.ma-cookie-banner.is-visible { display: block; }
.ma-cookie-banner__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: flex; align-items: center; justify-content: space-between;
	gap: 24px; flex-wrap: wrap;
}
.ma-cookie-banner p {
	font-family: var(--ma-font-stack);
	font-size: 13px; color: rgba(255,255,255,.6);
}
.ma-cookie-banner a { color: var(--gold); }
.ma-cookie-banner__actions { display: flex; gap: 12px; flex-shrink: 0; }

/* ── BLOG — PAGE IDÉES ── */
.ma-blog-hero {
	background: var(--dark); padding: var(--ma-padding-y) var(--ma-padding-x);
	min-height: 340px; display: flex; align-items: center;
}
.ma-blog-hero__inner { max-width: var(--ma-max-width); margin: 0 auto; width: 100%; }
.ma-blog-hero__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(56px, 7vw, 96px); font-weight: 300; color: #fff;
	margin-bottom: 16px;
}
.ma-blog-hero__sub {
	font-family: var(--ma-font-stack);
	font-size: clamp(16px, 1.8vw, 20px); color: rgba(255,255,255,.45);
	max-width: 600px; line-height: 1.7; margin-bottom: 40px;
}
.ma-blog-hero__tabs { display: flex; gap: 4px; flex-wrap: wrap; }

.ma-blog-content {
	padding: var(--ma-padding-y) var(--ma-padding-x);
	background: var(--cream);
}
.ma-blog-content__inner { max-width: var(--ma-max-width); margin: 0 auto; }

/* Hero blog — tab actif en navy */
.ma-blog-hero__tabs .ma-tab.is-active,
.ma-blog-hero__tabs .ma-tab:hover {
	background: var(--navy); color: #fff; border-color: var(--navy);
}

/* Article featured */
.ma-post-featured {
	display: grid; grid-template-columns: 1.4fr 1fr; gap: 48px;
	margin-bottom: 64px; padding-bottom: 64px;
	border-bottom: 1px solid var(--border);
}
.ma-post-featured__img {
	aspect-ratio: 16/9; overflow: hidden;
	background: var(--gold-pale);
	border-radius: var(--ma-radius-img);
}
.ma-post-featured__img img {
	width: 100%; height: 100%; object-fit: cover;
	border-radius: var(--ma-radius-img);
	transition: transform .4s;
}
.ma-post-featured__img:hover img { transform: scale(1.03); }
.ma-post-featured__body { display: flex; flex-direction: column; justify-content: center; }

/* Grille articles */
.ma-posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }

/* Card article */
.ma-post-card {
	background: #fff; overflow: hidden;
	transition: all .25s;
	border-radius: var(--ma-radius-card);
	border: 1px solid var(--border);
}
.ma-post-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 40px rgba(0,0,0,.08);
	border-color: var(--gold);
}
.ma-post-card__img {
	aspect-ratio: 16/9; overflow: hidden;
	background: var(--gold-pale);
}
.ma-post-card__img img {
	width: 100%; height: 100%; object-fit: cover;
	border-radius: var(--ma-radius-img) var(--ma-radius-img) 0 0;
	transition: transform .4s;
}
.ma-post-card:hover .ma-post-card__img img { transform: scale(1.04); }
.ma-post-card__body { padding: 24px; }
.ma-post-card__cat {
	font-family: var(--ma-font-stack);
	font-size: 10px; letter-spacing: .12em; text-transform: uppercase;
	color: #fff; margin-bottom: 10px;
	display: inline-block;
	background: var(--navy); padding: 3px 10px;
	border-radius: var(--ma-radius-btn);
}
.ma-post-card__title {
	font-family: var(--ma-font-stack); font-size: 22px; font-weight: 500;
	color: var(--dark); line-height: 1.25; margin-bottom: 10px;
}
.ma-post-card__excerpt {
	font-family: var(--ma-font-stack);
	font-size: 13px; color: var(--muted); line-height: 1.7; margin-bottom: 16px;
}
.ma-post-card__meta {
	font-family: var(--ma-font-stack);
	font-size: 11px; color: var(--muted); letter-spacing: .05em;
	display: flex; gap: 12px; align-items: center; flex-wrap: wrap;
}
.ma-post-card__link {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .1em; text-transform: uppercase;
	color: var(--navy); font-weight: 500; margin-top: 16px; display: inline-block;
	transition: opacity .2s;
}
.ma-post-card__link:hover { opacity: .7; }
.ma-post-card__inner-link {
	display: block; text-decoration: none; color: inherit; height: 100%;
}
.ma-post-card__inner-link:hover .ma-post-card__link { opacity: .7; }
.ma-post-card__inner-link:focus-visible {
	outline: 2px solid var(--gold); outline-offset: 3px;
}

/* Pagination */
.ma-pagination {
	display: flex; justify-content: center; gap: 8px;
	margin-top: 64px; padding-top: 40px;
	border-top: 1px solid var(--border);
}
.ma-pagination a,
.ma-pagination span {
	font-family: var(--ma-font-stack);
	font-size: 12px; letter-spacing: .08em;
	padding: 10px 16px; border: 1px solid var(--border);
	color: var(--muted); transition: all .2s;
	border-radius: var(--ma-radius-btn);
}
.ma-pagination a:hover,
.ma-pagination .current { background: var(--dark); color: #fff; border-color: var(--dark); }

/* ── SINGLE ARTICLE ── */
.ma-single-header {
	background: var(--dark);
	padding: calc(var(--ma-padding-y) + 72px) var(--ma-padding-x) var(--ma-padding-y);
	position: relative;
}
.ma-single-header--has-image {
	min-height: 480px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
.ma-single-header__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, rgba(14,14,14,.35) 0%, rgba(14,14,14,.82) 100%);
	z-index: 0;
	pointer-events: none;
}
.ma-single-header__inner {
	max-width: 800px;
	margin: 0 auto;
	width: 100%;
	position: relative;
	z-index: 1;
}
.ma-single-header__cat {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .15em; text-transform: uppercase;
	color: var(--navy); margin-bottom: 20px;
	background: #fff; display: inline-block; padding: 4px 12px;
	border-radius: var(--ma-radius-btn);
}
.ma-single-header__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(28px, 3.5vw, 48px); font-weight: 400; line-height: 1.15; color: #fff;
	margin-bottom: 24px;
}
.ma-single-header__meta {
	font-family: var(--ma-font-stack);
	font-size: 12px; color: rgba(255,255,255,.5); letter-spacing: .05em;
	display: flex; gap: 16px; flex-wrap: wrap;
}
.ma-single-content {
	max-width: 720px;
}
.entry-content { font-family: var(--ma-font-stack); }
.entry-content h2 {
	font-family: var(--ma-font-stack);
	font-size: clamp(26px, 3vw, 38px); font-weight: 400; color: var(--dark);
	margin: 48px 0 20px;
}
.entry-content h3 {
	font-family: var(--ma-font-stack);
	font-size: clamp(20px, 2.2vw, 28px); font-weight: 500; color: var(--dark);
	margin: 36px 0 16px;
}
.entry-content p {
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height);
	color: var(--muted); margin-bottom: 20px;
}
.entry-content blockquote {
	border-left: 3px solid var(--gold); padding-left: 24px;
	margin: 32px 0; font-family: var(--ma-font-stack);
	font-size: clamp(20px, 2.2vw, 26px); font-style: italic;
	color: var(--dark); line-height: 1.5;
}
.entry-content a { color: var(--navy); border-bottom: 1px solid rgba(18,45,91,.25); transition: color .2s, border-color .2s; }
.entry-content a:hover { color: var(--gold); border-color: var(--gold); }
.entry-content ul, .entry-content ol {
	padding-left: 24px; margin-bottom: 20px;
}
.entry-content li {
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height);
	color: var(--muted); margin-bottom: 8px;
}
.entry-content img { border-radius: var(--ma-radius-img); margin: 32px 0; }
.wp-post-image { border-radius: var(--ma-radius-img); }

/* Articles liés */
.ma-related-posts {
	padding: var(--ma-padding-y) var(--ma-padding-x);
	background: var(--cream);
}
.ma-related-posts__inner { max-width: var(--ma-max-width); margin: 0 auto; }
.ma-related-posts__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 40px; }

/* ── PAGE SIGNATURE ── */
.ma-signature-hero {
	background: var(--cream); padding: calc(var(--ma-padding-y) + 72px) var(--ma-padding-x) var(--ma-padding-y);
}
.ma-signature-hero__inner { max-width: var(--ma-max-width); margin: 0 auto; }
.ma-signature-hero__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(48px, 6vw, 80px); font-weight: 300; color: var(--dark);
	margin-bottom: 20px;
}
.ma-signature-hero__sub {
	font-family: var(--ma-font-stack);
	font-size: clamp(16px, 1.8vw, 20px); color: var(--muted); max-width: 600px; line-height: 1.7;
}
.ma-signature-pillars {
	padding: var(--ma-padding-y) var(--ma-padding-x);
	background: #fff;
}
.ma-signature-pillars__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: grid; grid-template-columns: 1fr 1fr; gap: 60px;
}
.ma-signature-pillar__num {
	font-family: var(--ma-font-stack); font-size: 100px; font-weight: 300;
	color: rgba(18,45,91,.15); line-height: 1; margin-bottom: 8px;
}
.ma-signature-pillar__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(28px, 3vw, 42px); font-weight: 400; color: var(--navy);
	margin-bottom: 20px;
}
.ma-signature-pillar__text {
	font-family: var(--ma-font-stack);
	font-size: var(--ma-font-size-base); line-height: var(--ma-line-height);
	color: var(--muted); margin-bottom: 28px;
}
.ma-signature-pillar__themes { list-style: none; margin-bottom: 28px; }
.ma-signature-pillar__themes li {
	font-family: var(--ma-font-stack);
	font-size: 13px; color: var(--muted); padding: 8px 0;
	border-bottom: 1px solid var(--border);
	display: flex; align-items: center; gap: 10px;
}
.ma-signature-pillar__themes li::before {
	content: ''; display: block; width: 4px; height: 4px; background: var(--navy); flex-shrink: 0;
}
.ma-signature-analyses {
	padding: var(--ma-padding-y) var(--ma-padding-x);
	background: var(--dark);
}
.ma-signature-analyses__inner { max-width: var(--ma-max-width); margin: 0 auto; }

/* ── BLOC BLOG ── */
/* ── BLOC BLOG (Gutenberg) ── */
.ma-blog { background: var(--cream); overflow: visible; }
.ma-blog__hero {
	background: var(--dark);
	padding: var(--ma-padding-y) var(--ma-padding-x) 160px;
}
.ma-blog__hero--dark-black { background: var(--dark); }
.ma-blog__hero--dark-navy  { background: var(--navy); }
.ma-blog__hero--light      { background: #fff; }
.ma-blog__hero-inner { max-width: var(--ma-max-width); margin: 0 auto; }
.ma-blog__hero-title {
	font-family: var(--ma-font-stack);
	font-size: clamp(40px, 5vw, 72px); font-weight: 700; color: #fff;
	margin-bottom: 16px;
}
.ma-blog__hero--light .ma-blog__hero-title { color: var(--dark); }
.ma-blog__hero-divider { width: 48px; height: 1px; background: var(--gold); margin: 24px 0; }
.ma-blog__hero-sub {
	font-family: var(--ma-font-stack);
	font-size: 15px; font-weight: 300; color: rgba(255,255,255,.55);
	max-width: 560px; line-height: 1.8; margin-bottom: 32px;
}
.ma-blog__hero--light .ma-blog__hero-sub { color: var(--muted); }
.ma-blog__hero--light .ma-section-label { color: var(--navy); }
.ma-blog__hero--light .ma-section-label::before { background: var(--navy); }
/* Cards wrap — overlap hero by 140px */
.ma-blog__cards-wrap {
	max-width: var(--ma-max-width); margin: -140px auto 0;
	padding: 0 var(--ma-padding-x);
	position: relative; z-index: 1;
}
.ma-blog__grid {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.ma-blog__cta { text-align: center; padding: 48px 0 var(--ma-padding-y); }
.ma-blog__cta .ma-btn,
.ma-blog__cta .ma-blog__load-more {
	background: var(--navy); color: #fff; border-color: var(--navy);
	cursor: pointer; font-family: var(--ma-font-stack); font-size: 13px;
	font-weight: 500; letter-spacing: .08em; padding: 16px 40px;
	border-radius: var(--ma-radius-btn); border: 2px solid var(--navy);
	display: inline-block; text-decoration: none; transition: background .2s, color .2s;
}
.ma-blog__cta .ma-btn:hover,
.ma-blog__cta .ma-blog__load-more:hover {
	background: transparent; color: var(--navy);
}
/* Card blog (bloc Gutenberg) */
.ma-blog-card {
	background: #fff; border: 1px solid var(--border);
	border-radius: 10px; overflow: hidden; transition: all .25s;
}
.ma-blog-card:hover {
	border-color: var(--navy); transform: translateY(-4px);
	box-shadow: 0 12px 40px rgba(18,45,91,.08);
}
.ma-blog-card__thumb {
	aspect-ratio: 16/9; overflow: hidden; position: relative; background: var(--gold-pale);
}
.ma-blog-card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s;
	border-radius: var(--ma-radius-img) var(--ma-radius-img) 0 0; }
.ma-blog-card:hover .ma-blog-card__thumb img { transform: scale(1.04); }
.ma-blog-card__badge {
	position: absolute; top: 12px; left: 12px;
	font-family: var(--ma-font-stack); font-size: 10px; letter-spacing: .1em; text-transform: uppercase;
	background: var(--navy); color: #fff; border-radius: var(--ma-radius-btn); padding: 4px 10px;
}
.ma-blog-card__body { padding: 24px; }
.ma-blog-card__cat {
	font-family: var(--ma-font-stack); font-size: 10px; letter-spacing: .12em; text-transform: uppercase;
	color: var(--navy); margin-bottom: 8px;
}
.ma-blog-card__title {
	font-family: var(--ma-font-stack); font-size: 20px; font-weight: 600;
	color: var(--dark); line-height: 1.3; margin-bottom: 10px;
}
.ma-blog-card__title a { color: inherit; }
.ma-blog-card__title a:hover { color: var(--navy); }
.ma-blog-card__excerpt {
	font-family: var(--ma-font-stack); font-size: 13px; color: var(--muted);
	line-height: 1.7; font-weight: 300; margin-bottom: 16px;
}
.ma-blog-card__meta {
	display: flex; justify-content: space-between;
	font-family: var(--ma-font-stack); font-size: 11px; color: var(--muted);
}
.ma-blog-card__link {
	display: inline-block; margin-top: 16px;
	font-family: var(--ma-font-stack); font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
	color: var(--navy); font-weight: 500; transition: color .2s;
}
.ma-blog-card__link:hover { color: var(--gold); }

/* ── BLOC NEWSLETTER (Gutenberg) ── */
.ma-newsletter {
	background: var(--dark); padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-newsletter--dark  { background: var(--dark); }
.ma-newsletter--navy  { background: var(--navy); }
.ma-newsletter--light { background: #fff; }
.ma-newsletter__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center;
}
.ma-newsletter__divider { width: 32px; height: 1px; background: var(--gold); margin-bottom: 24px; }
.ma-newsletter__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(28px, 3.5vw, 44px); font-weight: 700;
	color: #fff; margin-bottom: 16px;
}
.ma-newsletter--light .ma-newsletter__title { color: var(--dark); }
.ma-newsletter__sub {
	font-family: var(--ma-font-stack);
	font-size: 15px; font-weight: 300; line-height: 1.8;
	color: rgba(255,255,255,.45);
}
.ma-newsletter--light .ma-newsletter__sub { color: var(--muted); }
.ma-newsletter__input {
	display: block; width: 100%;
	font-family: var(--ma-font-stack);
	background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12);
	color: #fff; padding: 16px 20px; font-size: 14px;
	border-radius: var(--ma-radius-btn); outline: none; transition: border-color .2s;
}
.ma-newsletter--light .ma-newsletter__input {
	background: #fff; border-color: var(--border); color: var(--dark);
}
.ma-newsletter__input:focus { border-color: var(--gold); }
.ma-newsletter--light .ma-newsletter__input:focus { border-color: var(--navy); }
.ma-newsletter__input::placeholder { color: rgba(255,255,255,.35); }
.ma-newsletter--light .ma-newsletter__input::placeholder { color: var(--muted); }
.ma-newsletter__rgpd {
	font-family: var(--ma-font-stack);
	font-size: 11px; color: rgba(255,255,255,.25); margin-top: 12px;
}
.ma-newsletter--light .ma-newsletter__rgpd { color: var(--muted); }
.ma-newsletter__rgpd a { color: var(--gold); }

/* ── PAGE BIOGRAPHIE ── */
.ma-bio-hero {
	background: var(--dark);
	padding: calc(var(--ma-padding-y) + 72px) var(--ma-padding-x) var(--ma-padding-y);
}
.ma-bio-hero__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center;
}
.ma-bio-hero__name {
	font-family: var(--ma-font-stack);
	font-size: clamp(52px, 6vw, 80px); font-weight: 300; line-height: 1.05; color: #fff;
	margin-bottom: 8px;
}
.ma-bio-hero__name strong { font-weight: 700; color: var(--gold-light); }
.ma-bio-hero__divider { width: 48px; height: 1px; background: var(--gold); margin: 32px 0; }
.ma-bio-hero__intro {
	font-family: var(--ma-font-stack);
	font-size: 16px; font-weight: 300; color: rgba(255,255,255,.6); line-height: 1.9;
}
.ma-bio-hero__quote {
	font-family: var(--ma-font-stack); font-style: italic; font-weight: 300;
	font-size: clamp(18px, 2vw, 24px); color: rgba(255,255,255,.7);
	border-left: 2px solid var(--gold); padding-left: 24px; margin-top: 32px;
}
.ma-bio-hero__right { position: relative; overflow: hidden; border-radius: var(--ma-radius-img); }
.ma-bio-hero__photo { width: 100%; height: 100%; object-fit: cover; max-height: 600px; border-radius: var(--ma-radius-img); }
.ma-bio-hero__photo-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(14,14,14,.4), transparent);
	border-radius: var(--ma-radius-img);
}
.ma-bio-hero__photo-placeholder {
	background: var(--navy); min-height: 400px; border-radius: var(--ma-radius-img);
	display: flex; align-items: center; justify-content: center;
	font-family: var(--ma-font-stack); font-size: 80px; font-weight: 700; color: var(--gold);
}
.ma-bio-blocks {
	background: #fff; padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-bio-blocks__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
}
.ma-bio-long {
	background: #fff; padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-bio-long__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: grid; grid-template-columns: 1fr 2fr; gap: 80px;
}
.ma-bio-long__sidebar { position: sticky; top: 100px; align-self: start; }
.ma-bio-long__lifestyle {
	width: 100%; border-radius: var(--ma-radius-img); margin-top: 20px; margin-bottom: 20px;
}
.ma-bio-long__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.ma-bio-long__content p {
	font-family: var(--ma-font-stack); font-size: 16px; line-height: 1.9;
	color: var(--text); margin-bottom: 24px; font-weight: 300;
}
.ma-bio-long__content p:first-child { font-size: 18px; color: var(--dark); font-weight: 400; }
.ma-bio-quote-block {
	background: var(--navy); padding: 80px var(--ma-padding-x); text-align: center;
}
.ma-bio-quote-block__inner { max-width: 800px; margin: 0 auto; position: relative; }
.ma-bio-quote-block__open,
.ma-bio-quote-block__close {
	font-family: var(--ma-font-stack); font-size: 80px; line-height: 0;
	color: var(--gold); position: absolute;
}
.ma-bio-quote-block__open { top: 40px; left: 0; }
.ma-bio-quote-block__close { bottom: -20px; right: 0; }
.ma-bio-quote-block__text {
	font-family: var(--ma-font-stack); font-style: italic; font-weight: 300;
	font-size: clamp(22px, 3vw, 36px); color: #fff; padding: 0 80px;
}
.ma-bio-meta { background: var(--cream); }
.ma-bio-meta__grid {
	display: grid; grid-template-columns: repeat(4, 1fr);
	gap: 1px; background: var(--border);
}
.ma-bio-meta__cell { background: #fff; padding: 32px 24px; }
.ma-bio-meta__label {
	font-family: var(--ma-font-stack); font-size: 10px; text-transform: uppercase;
	letter-spacing: .12em; color: var(--navy); margin-bottom: 8px;
}
.ma-bio-meta__value {
	font-family: var(--ma-font-stack); font-size: 22px; font-weight: 600; color: var(--dark);
}

/* ── PAGE PARCOURS ── */
.ma-pp-hero {
	background: var(--dark);
	padding: calc(var(--ma-padding-y) + 72px) var(--ma-padding-x) var(--ma-padding-y);
}
.ma-pp-hero__inner { max-width: 800px; margin: 0 auto; }
.ma-pp-hero__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(48px, 5vw, 72px); font-weight: 700; color: #fff; margin: 16px 0 24px;
}
.ma-pp-hero__title em { font-style: italic; color: var(--gold); }
.ma-pp-hero__intro {
	font-family: var(--ma-font-stack); font-size: 16px; font-weight: 300;
	color: rgba(255,255,255,.5); line-height: 1.9; max-width: 600px;
}
.ma-pp-timeline {
	background: #fff; padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-pp-timeline__inner {
	max-width: var(--ma-max-width); margin: 0 auto;
	display: grid; grid-template-columns: 280px 1fr; gap: 80px;
}
.ma-pp-timeline__filters { position: sticky; top: 100px; align-self: start; }
.ma-pp-timeline__filter-label {
	font-family: var(--ma-font-stack); font-size: 10px; text-transform: uppercase;
	letter-spacing: .12em; color: var(--muted); margin-bottom: 12px;
}
.ma-pp-timeline__filters .ma-tab { display: block; width: 100%; text-align: left; margin-bottom: 4px; }
.ma-pp-tl-item {
	display: grid; grid-template-columns: 120px 1fr; gap: 32px;
	padding-bottom: 48px; margin-bottom: 48px; border-bottom: 1px solid var(--border);
}
.ma-pp-tl-item:last-child { border-bottom: none; }
.ma-pp-tl-year {
	font-family: var(--ma-font-stack); font-size: 12px; font-weight: 500;
	letter-spacing: .08em; color: var(--navy); padding-top: 6px;
}
.ma-pp-tl-badge {
	display: block; margin-top: 8px;
	background: var(--gold); color: #fff; font-size: 9px;
	padding: 2px 8px; border-radius: var(--ma-radius-btn);
	font-family: var(--ma-font-stack); text-transform: uppercase; letter-spacing: .08em;
	width: fit-content;
}
.ma-pp-tl-content { position: relative; }
.ma-pp-tl-dot {
	position: absolute; left: -16px; top: 8px;
	width: 10px; height: 10px;
	border: 1.5px solid var(--navy); background: #fff; transform: rotate(45deg);
}
.ma-pp-tl-role {
	font-family: var(--ma-font-stack); font-size: 24px; font-weight: 600;
	color: var(--dark); margin-bottom: 4px;
}
.ma-pp-tl-org {
	font-family: var(--ma-font-stack); font-size: 14px; font-weight: 500;
	color: var(--navy); margin-bottom: 4px;
}
.ma-pp-tl-loc {
	font-family: var(--ma-font-stack); font-size: 12px; font-weight: 300;
	color: var(--muted); letter-spacing: .06em; margin-bottom: 16px;
}
.ma-pp-tl-desc {
	font-family: var(--ma-font-stack); font-size: 14px; font-weight: 300;
	color: var(--muted); line-height: 1.8;
}
.ma-pp-formation { background: var(--cream); padding: var(--ma-padding-y) var(--ma-padding-x); }
.ma-pp-formation__inner { max-width: 700px; margin: 0 auto; }
.ma-pp-formation__list { margin-top: 40px; }
.ma-pp-formation__item {
	display: grid; grid-template-columns: 3fr 1fr 1fr;
	gap: 24px; padding: 20px 0; border-bottom: 1px solid var(--border); align-items: baseline;
}
.ma-pp-formation__diploma { font-family: var(--ma-font-stack); font-size: 20px; font-weight: 600; color: var(--dark); }
.ma-pp-formation__inst    { font-family: var(--ma-font-stack); font-size: 14px; font-weight: 400; color: var(--navy); }
.ma-pp-formation__year    { font-family: var(--ma-font-stack); font-size: 14px; color: var(--muted); text-align: right; }
.ma-pp-aga {
	background: var(--navy); padding: 80px var(--ma-padding-x); text-align: center;
}
.ma-pp-aga__inner { max-width: 800px; margin: 0 auto; }
.ma-pp-aga .ma-section-label { justify-content: center; color: var(--gold); }
.ma-pp-aga .ma-section-label::before { background: var(--gold); }
.ma-pp-aga__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(24px, 3vw, 36px); font-weight: 600; color: #fff; margin: 16px 0;
}
.ma-pp-aga__text {
	font-family: var(--ma-font-stack); font-size: 15px; font-weight: 300;
	color: rgba(255,255,255,.5); line-height: 1.8; max-width: 600px; margin: 24px auto;
}

/* ── LAYOUT ARTICLE + SIDEBAR ── */
.ma-single-wrap {
	padding: var(--ma-padding-y) 10%;
}
.ma-single-layout {
	max-width: 1400px; margin: 0 auto;
	display: grid; grid-template-columns: 1fr 300px; gap: 72px; align-items: start;
}
.ma-single-layout .ma-single-content { padding: 0; max-width: 100%; display: flex; gap: 30px; align-items: flex-start; }
.ma-single-sidebar {
	position: sticky; top: 92px;
	display: flex; flex-direction: column; gap: 40px;
	background: var(--navy);
	padding: 8%;
	border-radius: 10px;
}

/* ── BARRE DE PARTAGE VERTICALE ── */
.ma-share-bar {
	position: sticky;
	top: 100px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	background: rgba(240,240,238,.80);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border-radius: 40px;
	padding: 12px 8px;
	flex-shrink: 0;
	width: 44px;
	align-items: center;
}
.ma-share-btn {
	display: flex; align-items: center; justify-content: center;
	width: 34px; height: 34px; border-radius: 50%;
	background: transparent;
	color: #555;
	transition: background .2s, color .2s, transform .15s;
	border: none; cursor: pointer; padding: 0;
	position: relative;
	text-decoration: none;
}
.ma-share-btn svg { width: 16px; height: 16px; flex-shrink: 0; }
.ma-share-btn:hover { transform: scale(1.12); }
.ma-share-btn--linkedin:hover  { background: #0077B5; color: #fff; }
.ma-share-btn--facebook:hover  { background: #1877F2; color: #fff; }
.ma-share-btn--x:hover         { background: #0E0E0E; color: #fff; }
.ma-share-btn--email:hover     { background: var(--navy); color: #fff; }
.ma-share-btn--whatsapp:hover  { background: #25D366; color: #fff; }
.ma-share-btn--substack:hover  { background: #FF6719; color: #fff; }
.ma-share-btn--copy:hover      { background: var(--gold); color: #fff; }
.ma-share-btn__copied {
	position: absolute;
	left: calc(100% + 8px);
	top: 50%;
	transform: translateY(-50%);
	background: var(--dark);
	color: #fff;
	font-family: var(--ma-font-stack);
	font-size: 11px;
	white-space: nowrap;
	padding: 4px 10px;
	border-radius: var(--ma-radius-btn);
	pointer-events: none;
	opacity: 0;
	transition: opacity .2s;
}
.ma-share-btn--copy.is-copied .ma-share-btn__copied { opacity: 1; }

/* ── SIDEBAR WIDGETS ── */
.ma-sidebar-widget__title {
	font-family: var(--ma-font-stack);
	font-size: 16px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase;
	color: #fff; margin-bottom: 20px;
	padding-bottom: 12px; border-bottom: 2px solid rgba(184,150,90,.35);
}

/* Catégories */
.ma-sidebar-cats { list-style: none; display: flex; flex-direction: column; gap: 4px; }
.ma-sidebar-cats__item a {
	display: flex; justify-content: space-between; align-items: center;
	font-family: var(--ma-font-stack); font-size: 15px; font-weight: 500;
	color: #fff;
	padding: 10px 12px; border-radius: 6px;
	background: rgba(255,255,255,.04);
	transition: background .2s, color .2s;
}
.ma-sidebar-cats__item a:hover {
	background: rgba(184,150,90,.18);
	color: var(--gold);
}
.ma-sidebar-cats__item.is-active a {
	background: rgba(184,150,90,.2);
	color: var(--gold);
	font-weight: 700;
}
.ma-sidebar-cats__count {
	font-size: 12px; font-weight: 400;
	color: #fff;
	background: rgba(255,255,255,.1);
	padding: 2px 8px; border-radius: 20px;
	flex-shrink: 0;
}

/* Derniers articles */
.ma-sidebar-latest { list-style: none; display: flex; flex-direction: column; gap: 4px; }
.ma-sidebar-latest__item {
	display: flex; flex-direction: column; gap: 5px;
	padding: 12px; border-radius: 6px;
	background: rgba(255,255,255,.04);
	transition: background .2s;
}
.ma-sidebar-latest__item:hover { background: rgba(255,255,255,.08); }
.ma-sidebar-latest__cat {
	font-family: var(--ma-font-stack);
	font-size: 10px; letter-spacing: .14em; text-transform: uppercase;
	color: #fff; font-weight: 600;
}
.ma-sidebar-latest__title {
	font-family: var(--ma-font-stack);
	font-size: 15px; font-weight: 600; color: #fff; line-height: 1.4;
	transition: color .2s;
	display: block;
}
.ma-sidebar-latest__title:hover { color: var(--gold); }
.ma-sidebar-latest__meta {
	font-family: var(--ma-font-stack);
	font-size: 11px; color: #fff; letter-spacing: .03em;
}

/* ── MÉDIA CARD — icône format ── */
.ma-media-card__format-icon {
	position: absolute; bottom: 10px; right: 12px;
	font-size: 16px; line-height: 1;
	background: rgba(0,0,0,.5); border-radius: 50%;
	width: 28px; height: 28px; display: flex; align-items: center; justify-content: center;
}
.ma-media-card__thumb { position: relative; }

/* ── SINGLE MÉDIA — layout outer ── */
.ma-media-single-outer {
	display: flex;
	gap: 30px;
	align-items: flex-start;
	padding: var(--ma-padding-y) 10%;
}
.ma-media-single-outer .ma-share-bar { flex-shrink: 0; }
.ma-media-single-wrap { flex: 1; min-width: 0; padding: 0; }

/* ── SINGLE MÉDIA ── */
.ma-media-header .ma-single-header__cat {
	background: #fff; color: var(--navy);
}
.ma-media-header__badges { display: flex; gap: 8px; align-items: center; margin-bottom: 20px; flex-wrap: wrap; }
.ma-media-header__format {
	font-family: var(--ma-font-stack);
	font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
	color: rgba(255,255,255,.7); border: 1px solid rgba(255,255,255,.3);
	padding: 4px 12px; border-radius: var(--ma-radius-btn);
}
.ma-media-single-wrap {
	max-width: 860px; margin: 0 auto;
	padding: var(--ma-padding-y) var(--ma-padding-x);
	display: flex; flex-direction: column; gap: 48px;
}

/* Embed YouTube */
.ma-media-embed { width: 100%; }
.ma-media-embed__ratio {
	position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;
	border-radius: var(--ma-radius-card);
	box-shadow: 0 16px 48px rgba(0,0,0,.12);
}
.ma-media-embed__ratio iframe {
	position: absolute; inset: 0; width: 100%; height: 100%;
}

/* Audio player */
.ma-media-audio {
	background: var(--navy); border-radius: var(--ma-radius-card);
	padding: 32px; display: flex; flex-direction: column; gap: 24px;
}
.ma-media-audio__inner { display: flex; align-items: center; gap: 20px; }
.ma-media-audio__icon { font-size: 40px; line-height: 1; flex-shrink: 0; }
.ma-media-audio__title {
	font-family: var(--ma-font-stack); font-size: 18px; font-weight: 600; color: #fff;
	margin-bottom: 4px; line-height: 1.3;
}
.ma-media-audio__source {
	font-family: var(--ma-font-stack); font-size: 12px;
	color: rgba(255,255,255,.55); text-transform: uppercase; letter-spacing: .1em;
}
.ma-media-audio__player { width: 100%; accent-color: var(--gold); }

/* Lien web */
.ma-media-web { display: flex; flex-direction: column; gap: 24px; }
.ma-media-web__btn {
	display: inline-flex; align-items: center; justify-content: space-between;
	gap: 16px;
	font-family: var(--ma-font-stack);
	font-size: 14px; font-weight: 500; letter-spacing: .06em;
	color: #fff; background: var(--navy);
	padding: 18px 28px; border-radius: var(--ma-radius-btn);
	transition: background .2s;
	text-decoration: none;
}
.ma-media-web__btn:hover { background: #1a3d7a; color: #fff; }
.ma-media-web__btn span { font-size: 18px; }
.ma-media-web__preview img {
	width: 100%; border-radius: var(--ma-radius-card);
	box-shadow: 0 8px 32px rgba(0,0,0,.1);
}

/* Contenu texte */
.ma-media-content { border-top: 1px solid var(--border); padding-top: 40px; }

/* Retour */
.ma-media-back__link {
	font-family: var(--ma-font-stack);
	font-size: 13px; letter-spacing: .06em;
	color: var(--muted); transition: color .2s;
	text-decoration: none;
}
.ma-media-back__link:hover { color: var(--navy); }

/* ── ARTICLES LIÉS EN BAS — override padding single ── */
.single .ma-related-posts { padding-left: 10%; padding-right: 10%; }
.single .ma-related-posts__inner { max-width: 1400px; }

/* ── TABLE DES MATIÈRES (sidebar article) ── */
.ma-toc { padding: 24px; border: 1px solid var(--border); border-radius: var(--ma-radius-card); }
.ma-toc__title {
	font-family: var(--ma-font-stack); font-size: 11px; text-transform: uppercase;
	letter-spacing: .12em; color: var(--navy); margin-bottom: 12px;
}
.ma-toc__list { list-style: none; }
.ma-toc__list li { margin-bottom: 6px; }
.ma-toc__list a {
	font-family: var(--ma-font-stack); font-size: 13px; color: var(--muted);
	transition: color .2s;
}
.ma-toc__list a:hover, .ma-toc__list a.is-active { color: var(--navy); font-weight: 500; }

/* ── BREADCRUMB ── */
.ma-breadcrumb {
	font-family: var(--ma-font-stack); font-size: 12px;
	color: rgba(255,255,255,.35); margin-bottom: 20px;
	display: flex; gap: 6px; align-items: center; flex-wrap: wrap;
}
.ma-breadcrumb__sep { color: var(--gold); }
.ma-breadcrumb a { color: rgba(255,255,255,.35); transition: color .2s; }
.ma-breadcrumb a:hover { color: var(--gold); }

/* ── PAGE LÉGALE (politique de confidentialité, mentions légales) ── */
.ma-legal-content { background: #fff; padding: 60px var(--ma-padding-x) 80px; }
.ma-legal-content__inner { max-width: 860px; margin: 0 auto; }

.ma-legal-section { margin-bottom: 48px; }
.ma-legal-section h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 22px; font-weight: 600; color: var(--navy); margin-bottom: 16px; padding-bottom: 8px; border-bottom: 1px solid rgba(18,45,91,.15); }
.ma-legal-section p,
.ma-legal-section li { font-size: 15px; line-height: 1.75; color: var(--muted); }
.ma-legal-section ul { padding-left: 20px; margin: 12px 0; }
.ma-legal-section li { margin-bottom: 6px; }
.ma-legal-section a { color: var(--navy); text-decoration: underline; text-underline-offset: 3px; }
.ma-legal-section a:hover { color: var(--gold); }
.ma-legal-section strong { color: var(--dark); font-weight: 600; }
.ma-legal-section code { background: rgba(18,45,91,.06); padding: 2px 6px; border-radius: 4px; font-size: 13px; color: var(--dark); }

.ma-legal-table-wrap { overflow-x: auto; margin: 16px 0; }
.ma-legal-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.ma-legal-table th { background: rgba(18,45,91,.05); color: var(--navy); font-weight: 600; text-align: left; padding: 10px 14px; border-bottom: 1px solid rgba(18,45,91,.15); }
.ma-legal-table td { padding: 10px 14px; border-bottom: 1px solid rgba(18,45,91,.07); color: var(--muted); vertical-align: top; }
.ma-legal-table tr:last-child td { border-bottom: none; }

/* ── FOCUS VISIBLE (accessibilité clavier) ── */
.ma-btn:focus-visible,
.ma-tab:focus-visible,
.ma-share-btn:focus-visible,
.ma-formation__box-cta:focus-visible,
.ma-nav__links a:focus-visible,
.ma-footer__links a:focus-visible,
.ma-breadcrumb a:focus-visible,
.ma-toc__list a:focus-visible,
.ma-media-card a:focus-visible,
.ma-single-header__cat:focus-visible {
	outline: 2px solid var(--gold);
	outline-offset: 3px;
	border-radius: 2px;
}

/* ── RESPONSIVE ── */
@media (max-width: 1200px) {
	.ma-single-sidebar { display: none; }
	.ma-single-layout { grid-template-columns: 1fr; }
	.ma-single-wrap { padding: var(--ma-padding-y) var(--ma-padding-x); }
	.ma-share-bar { display: none; }
	.ma-media-single-outer { padding: var(--ma-padding-y) var(--ma-padding-x); flex-direction: column; }
}
@media (max-width: 1100px) {
	.ma-expertise__grid { grid-template-columns: repeat(2, 1fr); gap: 1.5%; }
	.ma-formation__grid { grid-template-columns: 1fr; }
	.ma-formation__right { margin-top: 0; }
	.ma-posts-grid { grid-template-columns: repeat(2, 1fr); }
	.ma-related-posts__grid { grid-template-columns: repeat(2, 1fr); }
	.ma-blog__grid { grid-template-columns: repeat(2, 1fr); }
	.ma-bio-meta__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
	.ma-page-bio__inner--with-photo { grid-template-columns: 1fr; }
	.ma-page-bio__photo { min-height: 260px; }
	.ma-hero { grid-template-columns: 1fr; }
	.ma-hero__right { display: none; }
	.ma-profil__inner { grid-template-columns: 1fr; padding: 60px var(--ma-padding-x); }
	.ma-profil__img { aspect-ratio: 4/3; }
	.ma-parcours__layout { grid-template-columns: 1fr; }
	.ma-medias__grid { grid-template-columns: repeat(2, 1fr); }
	.ma-contact { grid-template-columns: 1fr; }
	.ma-contact__left { border-right: none; border-bottom: 1px solid var(--border); padding: 60px var(--ma-padding-x); }
	.ma-contact__right { padding: 60px var(--ma-padding-x); }
	.ma-footer__inner { flex-direction: column; text-align: center; }
	.ma-post-featured { grid-template-columns: 1fr; }
	.ma-signature-pillars__inner { grid-template-columns: 1fr; }
	.ma-cookie-banner__inner { flex-direction: column; align-items: flex-start; }
	/* Bio */
	.ma-bio-hero__inner { grid-template-columns: 1fr; }
	.ma-bio-hero__right { order: -1; }
	.ma-bio-long__inner { grid-template-columns: 1fr; }
	.ma-bio-long__sidebar { position: static; }
	/* Parcours page */
	.ma-pp-timeline__inner { grid-template-columns: 1fr; }
	.ma-pp-timeline__filters { position: static; display: flex; flex-wrap: wrap; gap: 8px; }
	.ma-pp-timeline__filters .ma-tab { display: inline-block; width: auto; }
	.ma-pp-tl-item { grid-template-columns: 1fr; gap: 8px; }
	/* Blog block */
	.ma-blog__hero { padding-bottom: 120px; }
	.ma-blog__cards-wrap { margin-top: -100px; }
	/* Newsletter block */
	.ma-newsletter__inner { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 600px) {
	.ma-nav__links { display: none; }
	.ma-nav__burger { display: flex; }
	.ma-nav__links.is-open {
		display: flex; flex-direction: column;
		position: fixed; top: 72px; left: 0; right: 0;
		background: rgba(250,248,243,.97); padding: 32px var(--ma-padding-x);
		border-bottom: 1px solid var(--border); gap: 20px;
	}
	.ma-expertise__grid { grid-template-columns: 1fr; }
	.ma-medias__grid { grid-template-columns: 1fr; }
	.ma-posts-grid { grid-template-columns: 1fr; }
	.ma-related-posts__grid { grid-template-columns: 1fr; }
	.ma-newsletter-form { flex-direction: column; }
	.ma-cookie-banner__actions { flex-direction: column; width: 100%; }
	.ma-blog__grid { grid-template-columns: 1fr; }
	.ma-blog__hero { padding-bottom: 80px; }
	.ma-blog__cards-wrap { margin-top: -60px; padding: 0 var(--ma-padding-x); }
	.ma-bio-meta__grid { grid-template-columns: 1fr; }
	.ma-pp-formation__item { grid-template-columns: 1fr 1fr; }
	.ma-blog-card__thumb img { border-radius: var(--ma-radius-img) var(--ma-radius-img) 0 0; }
}

/* ══════════════════════════════════════════
   BLOC CITATION
══════════════════════════════════════════ */
.ma-citation {
	padding: 80px var(--ma-padding-x);
}
.ma-citation__inner {
	max-width: 860px;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.ma-citation__guillemet-open,
.ma-citation__guillemet-close {
	font-family: var(--ma-font-stack);
	font-size: 120px;
	line-height: 0;
	color: var(--gold);
	opacity: .25;
	display: block;
	margin-bottom: 16px;
	user-select: none;
}
.ma-citation__guillemet-close {
	margin-top: 16px;
	margin-bottom: 0;
}
.ma-citation__text {
	font-family: var(--ma-font-stack);
	font-size: clamp(22px, 3vw, 36px);
	font-weight: 300;
	font-style: italic;
	line-height: 1.5;
	color: #fff;
	border: none;
	padding: 0;
	margin: 0;
}
.ma-citation__auteur {
	font-family: var(--ma-font-stack);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--gold);
	margin-top: 32px;
}

/* ══════════════════════════════════════════
   BLOC SIGNATURE — DIAGNOSTIC
══════════════════════════════════════════ */
.ma-sig-diagnostic {
	background: #fff;
	padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-sig-diagnostic__inner {
	max-width: 760px;
	margin: 0 auto;
}
.ma-sig-diagnostic__content {
	margin-top: 40px;
}
.ma-sig-diagnostic__p {
	font-family: var(--ma-font-stack);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.9;
	color: var(--text);
	margin-bottom: 28px;
}
.ma-sig-diagnostic__p:first-child {
	font-size: 19px;
	font-weight: 400;
	color: var(--dark);
}
.ma-sig-diagnostic__keyword {
	font-weight: 700;
	color: var(--navy);
	font-style: normal;
}

/* ══════════════════════════════════════════
   BLOC SIGNATURE — AXE THÉMATIQUE
══════════════════════════════════════════ */
.ma-sig-axe {
	padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-sig-axe__inner {
	max-width: var(--ma-max-width);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 64px;
	align-items: start;
}
.ma-sig-axe__num {
	font-family: var(--ma-font-stack);
	font-size: 120px;
	font-weight: 700;
	line-height: 1;
	color: var(--navy);
	opacity: .08;
	user-select: none;
	padding-top: 8px;
}
.ma-sig-axe__titre {
	font-family: var(--ma-font-stack);
	font-size: clamp(28px, 3.5vw, 44px);
	font-weight: 700;
	color: var(--dark);
	margin-bottom: 8px;
}
.ma-sig-axe__sous-titre {
	font-family: var(--ma-font-stack);
	font-size: 17px;
	font-style: italic;
	font-weight: 300;
	color: var(--navy);
	margin-bottom: 28px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--border);
}
.ma-sig-axe__intro {
	font-family: var(--ma-font-stack);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.85;
	color: var(--muted);
	margin-bottom: 32px;
}
.ma-sig-axe__questions-label {
	font-family: var(--ma-font-stack);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--navy);
	margin-bottom: 16px;
}
.ma-sig-axe__list {
	list-style: none;
	padding: 0;
	margin: 0 0 36px;
}
.ma-sig-axe__item {
	font-family: var(--ma-font-stack);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.7;
	color: var(--text);
	padding: 12px 0 12px 20px;
	border-bottom: 1px solid var(--border);
	position: relative;
}
.ma-sig-axe__item::before {
	content: '›';
	position: absolute;
	left: 0;
	top: 12px;
	color: var(--navy);
	font-weight: 700;
	font-size: 16px;
}
/* Bouton navy (réutilisable) */
.ma-btn--navy {
	background: var(--navy);
	color: #fff;
	border: 2px solid var(--navy);
	padding: 14px 32px;
	font-family: var(--ma-font-stack);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .08em;
	text-decoration: none;
	border-radius: var(--ma-radius-btn);
	display: inline-block;
	transition: background .2s, color .2s;
}
.ma-btn--navy:hover {
	background: transparent;
	color: var(--navy);
}

/* ══════════════════════════════════════════
   BLOC SIGNATURE — ARTICULATION
══════════════════════════════════════════ */
.ma-sig-articulation {
	background: var(--navy);
	padding: var(--ma-padding-y) var(--ma-padding-x);
}
.ma-sig-articulation__inner {
	max-width: 800px;
	margin: 0 auto;
}
.ma-sig-articulation__titre {
	font-family: var(--ma-font-stack);
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 700;
	color: #fff;
	margin-bottom: 24px;
}
.ma-sig-articulation__divider {
	width: 48px;
	height: 2px;
	background: var(--gold);
	margin-bottom: 32px;
}
.ma-sig-articulation__p {
	font-family: var(--ma-font-stack);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.9;
	color: rgba(255,255,255,.65);
	margin-bottom: 24px;
}
.ma-sig-articulation__p:last-child {
	font-size: 17px;
	font-weight: 400;
	color: rgba(255,255,255,.85);
	font-style: italic;
	margin-bottom: 0;
}

/* ══════════════════════════════════════════
   BLOC ANALYSES — Layout éditorial
══════════════════════════════════════════ */
.ma-analyses {
	background: #fff;
	padding: var(--ma-padding-y) 10%;
}
.ma-analyses__header { margin-bottom: 40px; }
.ma-analyses__header-line {
	height: 2px;
	background: var(--dark);
	margin-top: 12px;
}
.ma-analyses .ma-section-label { color: var(--gold); }
.ma-analyses .ma-section-label::before { background: var(--gold); }/* Featured */
.ma-analyses-featured {
	display: grid;
	grid-template-columns: 55fr 45fr;
	gap: 48px;
	align-items: start;
	margin-bottom: 48px;
}
.ma-analyses-featured__img-wrap {
	display: block;
	overflow: hidden;
	border-radius: var(--ma-radius-img);
}
.ma-analyses-featured__img {
	width: 100%;
	aspect-ratio: 4/3;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}
.ma-analyses-featured__img-wrap:hover .ma-analyses-featured__img {
	transform: scale(1.03);
}
.ma-analyses-featured__img-placeholder {
	width: 100%;
	aspect-ratio: 4/3;
	background: var(--gold-pale, #f5f0e8);
	border-radius: var(--ma-radius-img);
}
.ma-analyses-featured__content { padding-top: 16px; }
.ma-analyses-featured__label {
	font-family: var(--ma-font-stack);
	font-size: 12px;
	font-weight: 400;
	color: var(--muted);
	letter-spacing: .04em;
	margin-bottom: 16px;
}
.ma-analyses-featured__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(24px, 3.5vw, 40px);
	font-weight: 700;
	line-height: 1.15;
	color: var(--dark);
	margin-bottom: 20px;
}
.ma-analyses-featured__title a {
	color: inherit;
	text-decoration: none;
	transition: color .2s;
}
.ma-analyses-featured__title a:hover { color: var(--navy); }
.ma-analyses-featured__meta {
	font-family: var(--ma-font-stack);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.7;
	color: var(--muted);
}
.ma-analyses-featured__meta em { font-style: italic; }
/* Flèche inline */
.ma-analyses__arrow {
	color: var(--navy);
	font-weight: 700;
	margin-left: 4px;
	display: inline-block;
	transition: transform .2s;
}
a:hover .ma-analyses__arrow { transform: translateX(4px); }
.ma-analyses__sep { margin: 0 6px; color: var(--border); }
/* Séparateur */
.ma-analyses__divider {
	border: none;
	border-top: 1px solid var(--border);
	margin-bottom: 40px;
}
/* Grille secondaires */
.ma-analyses-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.ma-analyses-card {
	display: grid;
	grid-template-columns: 40fr 60fr;
	gap: 24px;
	align-items: start;
	padding-right: 40px;
}
.ma-analyses-card--bordered {
	border-left: 1px solid var(--border);
	padding-left: 40px;
	padding-right: 0;
}
.ma-analyses-card__img-wrap {
	display: block;
	overflow: hidden;
	border-radius: var(--ma-radius-img);
}
.ma-analyses-card__img {
	width: 100%;
	aspect-ratio: 4/3;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}
.ma-analyses-card__img-wrap:hover .ma-analyses-card__img { transform: scale(1.04); }
.ma-analyses-card__img-placeholder {
	width: 100%;
	aspect-ratio: 4/3;
	background: var(--gold-pale, #f5f0e8);
	border-radius: var(--ma-radius-img);
}
.ma-analyses-card__content { padding-top: 4px; }
.ma-analyses-card__label {
	font-family: var(--ma-font-stack);
	font-size: 11px;
	color: var(--muted);
	letter-spacing: .04em;
	margin-bottom: 10px;
}
.ma-analyses-card__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(16px, 2vw, 22px);
	font-weight: 700;
	line-height: 1.25;
	color: var(--dark);
	margin-bottom: 12px;
}
.ma-analyses-card__title a {
	color: inherit;
	text-decoration: none;
	transition: color .2s;
}
.ma-analyses-card__title a:hover { color: var(--navy); }
.ma-analyses-card__meta {
	font-family: var(--ma-font-stack);
	font-size: 13px;
	font-weight: 300;
	line-height: 1.6;
	color: var(--muted);
}
.ma-analyses-card__meta em { font-style: italic; }

/* ══════════════════════════════════════════
   BLOC PARCOURS — overlay image de fond
══════════════════════════════════════════ */
.ma-parcours { position: relative; }
.ma-parcours__overlay {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.ma-parcours__inner { position: relative; z-index: 1; }

/* ══════════════════════════════════════════
   RESPONSIVE — nouveaux blocs
══════════════════════════════════════════ */
@media (max-width: 1100px) {
	.ma-analyses-featured { grid-template-columns: 1fr 1fr; gap: 32px; }
	.ma-sig-axe__inner { grid-template-columns: 100px 1fr; gap: 40px; }
	.ma-sig-axe__num { font-size: 80px; }
}
@media (max-width: 900px) {
	.ma-sig-axe__inner { grid-template-columns: 1fr; gap: 24px; }
	.ma-sig-axe__num { font-size: 64px; }
	.ma-analyses-featured { grid-template-columns: 1fr; }
	.ma-analyses-featured__img { aspect-ratio: 16/9; }
	.ma-analyses-grid { grid-template-columns: 1fr; gap: 0; }
	.ma-analyses-card { padding: 32px 0 0; border-left: none; border-top: 1px solid var(--border); }
	.ma-analyses-card--bordered { border-left: none; padding-left: 0; border-top: 1px solid var(--border); }
}
@media (max-width: 600px) {
	.ma-citation__text { font-size: 20px; }
	.ma-analyses-card { grid-template-columns: 1fr; }
	.ma-analyses-card__img { aspect-ratio: 16/9; }
}

/* ══════════════════════════════════════════
   BLOC BANNER
══════════════════════════════════════════ */
.ma-banner {
	padding: calc(var(--ma-padding-y) + 72px) var(--ma-padding-x) var(--ma-padding-y);
	background: linear-gradient(135deg, var(--navy), var(--dark));
	position: relative;
}
.ma-banner__overlay {
	position: absolute; inset: 0; z-index: 0; pointer-events: none;
}
.ma-banner__inner {
	position: relative; z-index: 1;
	max-width: var(--ma-max-width); margin: 0 auto;
}
.ma-banner__title {
	font-family: var(--ma-font-stack);
	font-size: clamp(36px, 5vw, 68px);
	font-weight: 300;
	color: #fff;
	line-height: 1.1;
	margin-bottom: 16px;
}
.ma-banner__title strong { font-weight: 700; }
.ma-banner__subtitle {
	font-family: var(--ma-font-stack);
	font-size: clamp(16px, 2vw, 22px);
	color: rgba(255,255,255,.65);
	line-height: 1.6;
	max-width: 640px;
}

/* ══════════════════════════════════════════
   BLOC PAGE-BIO
══════════════════════════════════════════ */
.ma-page-bio {
	padding: var(--ma-padding-y) 10%;
	background: var(--cream);
	position: relative;
}
.ma-page-bio__overlay {
	position: absolute; inset: 0; z-index: 0; pointer-events: none;
}
.ma-page-bio__inner {
	position: relative; z-index: 1;
	max-width: var(--ma-max-width); margin: 0 auto;
}
.ma-page-bio__inner--with-photo {
	display: grid;
	grid-template-columns: 70% 30%;
	gap: 48px;
	align-items: stretch;
}
.ma-page-bio__content { min-width: 0; }
.ma-page-bio__photo {
	position: relative;
	min-height: 400px;
	overflow: hidden;
	border-radius: 2px;
}
.ma-page-bio__photo-img {
	position: absolute; inset: 0;
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%; height: 100%;
}
@media (max-width: 768px) {
	.ma-page-bio__inner--with-photo { grid-template-columns: 1fr; }
	.ma-page-bio__photo { min-height: 280px; }
}
.ma-page-bio__name {
	font-family: var(--ma-font-stack);
	font-size: clamp(40px, 5vw, 72px);
	font-weight: 300;
	color: var(--dark);
	line-height: 1.05;
	margin: 12px 0 0;
}
.ma-page-bio__name strong { font-weight: 700; color: var(--navy); }
.ma-page-bio__subtitle {
	font-family: var(--ma-font-stack);
	font-size: 15px; font-weight: 300;
	color: var(--muted); letter-spacing: .04em;
	margin: 12px 0 0;
}
.ma-page-bio__divider { width: 48px; height: 2px; background: var(--gold); margin: 28px 0; }
.ma-page-bio__short {
	font-family: var(--ma-font-stack);
	font-size: clamp(17px, 2vw, 20px);
	font-weight: 300;
	line-height: 1.9;
	color: var(--text);
	max-width: 820px;
	margin-bottom: 32px;
}
.ma-page-bio__quote {
	border-left: 3px solid var(--gold);
	padding: 16px 24px;
	background: rgba(184,150,90,.06);
	font-style: italic;
	font-size: 18px;
	line-height: 1.7;
	color: var(--muted);
	margin: 0 0 32px;
	max-width: 720px;
}
.ma-page-bio__tags {
	display: flex; gap: 8px; flex-wrap: wrap; margin-top: 32px;
}

/* ══════════════════════════════════════════
   BLOCS PAGE TEMPLATE
══════════════════════════════════════════ */
.ma-pt-contact,
.ma-pt-medias,
.ma-pt-parcours,
.ma-pt-signature { display: block; }

/* Contact dans page-template : padding 10% sur le conteneur grid */
.ma-pt-contact .ma-contact {
	padding-top: 0;
	padding-left: 10%;
	padding-right: 10%;
}
.ma-pt-contact .ma-contact__left  { padding-left: 0; padding-right: 5%; }
.ma-pt-contact .ma-contact__right { padding-left: 5%; padding-right: 0; }

/* Médias dans page-template : pas de padding-top supplémentaire */
.ma-pt-medias .ma-medias { padding-top: var(--ma-padding-y); }

/* Parcours dans page-template : section-label et titre adaptés au mode clair */
.ma-pt-parcours .ma-parcours .ma-section-label { color: var(--gold); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-parcours__intro,
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-aga-box__desc { color: var(--muted); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-aga-box { border-color: rgba(18,45,91,.15); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-tl-item { border-color: rgba(18,45,91,.1); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-tl-year { color: var(--gold); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-tl-role { color: var(--dark); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-tl-org  { color: var(--muted); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-tl-desc { color: var(--muted); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-formation { border-color: rgba(18,45,91,.1); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-formation__item { border-color: rgba(18,45,91,.1); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-formation__degree { color: var(--dark); }
.ma-pt-parcours .ma-parcours[style*="background:#fff"] .ma-formation__school { color: var(--muted); }

@media (max-width: 768px) {
	.ma-formation__grid { grid-template-columns: 1fr; }
	.ma-formation__right { margin-top: 0; }
}
