/* FOBAK V129.6.84 — Direction & portraits premium
   Dernière couche visuelle dédiée aux responsables publics.
   Objectifs: portraits homogènes, suppression des zones vides, hiérarchie claire,
   biographies lisibles et expérience mobile digne de la version publique.
*/

:root{
  --leader-navy:#073f67;
  --leader-blue:#087fae;
  --leader-gold:#f1c928;
  --leader-ink:#173747;
  --leader-muted:#647a86;
  --leader-line:#d7e4eb;
  --leader-surface:#f6fafc;
}

/* ===== Section Direction sur l'accueil ===== */
.leadership-premium-section{
  position:relative;
  overflow:hidden;
  margin:34px auto!important;
  padding:clamp(20px,3vw,38px)!important;
  border:1px solid var(--leader-line)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(19,150,193,.10),transparent 28%),
    linear-gradient(180deg,#fff 0%,#f7fbfd 100%)!important;
  box-shadow:0 18px 46px rgba(5,57,88,.08)!important;
}
.leadership-premium-heading{align-items:end!important}
.leadership-premium-heading h2{
  margin:.25rem 0 .45rem!important;
  color:var(--leader-navy)!important;
  font-size:clamp(1.8rem,3vw,2.7rem)!important;
  line-height:1.05!important;
}
.leadership-premium-heading p{max-width:760px;color:var(--leader-muted)!important}

/* Président = vraie carte vedette */
.leadership-president-card{
  display:grid!important;
  grid-template-columns:minmax(280px,40%) minmax(0,1fr)!important;
  gap:clamp(22px,4vw,48px)!important;
  align-items:stretch!important;
  margin:22px 0 30px!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(8,127,174,.28)!important;
  border-radius:26px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(6,63,98,.12)!important;
}
.leadership-president-visual{
  position:relative!important;
  min-height:440px!important;
  background:linear-gradient(145deg,#dfeef5,#f8fbfc)!important;
  overflow:hidden!important;
}
.leadership-president-photo{
  width:100%!important;
  height:100%!important;
  min-height:440px!important;
  aspect-ratio:auto!important;
  border:0!important;
  border-radius:0!important;
  background:#eaf3f7!important;
}
.leadership-president-photo img{
  width:100%!important;
  height:100%!important;
  min-height:440px!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  transform:scale(1.025)!important;
}
.leadership-photo-badge{
  position:absolute;left:18px;bottom:18px;z-index:2;
  display:inline-flex;align-items:center;
  padding:9px 13px;border-radius:999px;
  background:rgba(4,55,88,.92);color:#fff;
  font-weight:900;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;
  box-shadow:0 8px 20px rgba(3,31,52,.24);
}
.leadership-president-copy{
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  padding:clamp(26px,4vw,52px) clamp(24px,4vw,54px) clamp(26px,4vw,52px) 0!important;
}
.leadership-president-copy .leader-level{color:var(--leader-blue)!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.leadership-president-copy h2{
  margin:10px 0 7px!important;color:var(--leader-navy)!important;
  font-size:clamp(2rem,4vw,3.4rem)!important;line-height:1!important;letter-spacing:-.035em!important;
}
.leadership-president-copy>strong{font-size:clamp(1.05rem,1.7vw,1.35rem)!important;color:#5a7280!important}
.leadership-biography-excerpt{
  margin:20px 0!important;color:#405d6b!important;font-size:1rem!important;line-height:1.75!important;
  display:block!important;overflow:visible!important;
}
.leadership-profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}

/* Autres responsables */
.leadership-premium-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.leadership-premium-card{
  display:flex!important;flex-direction:column!important;
  padding:0!important;overflow:hidden!important;
  border:1px solid var(--leader-line)!important;border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 11px 30px rgba(8,63,95,.08)!important;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
.leadership-premium-card:hover{transform:translateY(-4px)!important;box-shadow:0 18px 38px rgba(8,63,95,.13)!important}
.leadership-premium-photo{
  position:relative!important;display:block!important;
  width:100%!important;height:auto!important;aspect-ratio:4/4.7!important;
  overflow:hidden!important;border:0!important;border-radius:0!important;background:#edf4f7!important;
}
.leadership-premium-photo img{
  width:100%!important;height:100%!important;max-height:none!important;
  object-fit:cover!important;object-position:center 17%!important;
  transform:scale(1.045)!important;transition:transform .35s ease!important;
}
.leadership-premium-card:hover .leadership-premium-photo img{transform:scale(1.075)!important}
.leadership-premium-photo em{
  position:absolute!important;left:13px!important;bottom:13px!important;
  max-width:calc(100% - 26px)!important;padding:7px 10px!important;
  border-radius:10px!important;background:rgba(5,57,90,.9)!important;color:#fff!important;
  font-style:normal!important;font-size:.72rem!important;font-weight:850!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.leadership-premium-body{
  display:flex!important;flex:1!important;flex-direction:column!important;
  padding:19px 20px 21px!important;text-align:left!important;
}
.leadership-premium-body .leader-number{color:var(--leader-blue)!important;font-size:.75rem!important;font-weight:950!important;letter-spacing:.08em!important}
.leadership-premium-body h3{
  margin:7px 0 5px!important;color:var(--leader-navy)!important;
  font-size:clamp(1.15rem,1.8vw,1.45rem)!important;line-height:1.15!important;
}
.leadership-premium-body>strong{color:#5c7280!important;font-size:.94rem!important;line-height:1.35!important}
.leadership-premium-body p{
  margin:13px 0!important;color:#526b77!important;font-size:.9rem!important;line-height:1.55!important;
  display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
}
.leadership-profile-link{
  margin-top:auto!important;padding-top:12px!important;border-top:1px solid #e4edf2!important;
  color:var(--leader-blue)!important;text-decoration:none!important;font-weight:900!important;
}
.leadership-profile-link span{transition:transform .2s ease;display:inline-block}.leadership-profile-link:hover span{transform:translateX(4px)}

/* ===== Profil individuel ===== */
.leader-profile-premium{
  overflow:hidden!important;border:1px solid var(--leader-line)!important;border-radius:28px!important;
  background:#fff!important;box-shadow:0 18px 48px rgba(6,57,89,.09)!important;
}
.leader-profile-hero{
  display:grid!important;grid-template-columns:minmax(280px,38%) minmax(0,1fr)!important;
  gap:0!important;align-items:stretch!important;padding:0!important;background:linear-gradient(120deg,#f6fbfd,#fff)!important;
}
.leader-profile-photo{position:relative!important;min-height:520px!important;overflow:hidden!important;border-radius:0!important;background:#eaf3f7!important}
.leader-profile-photo img{
  display:block!important;width:100%!important;height:100%!important;min-height:520px!important;
  object-fit:cover!important;object-position:center 17%!important;transform:scale(1.025)!important;
}
.leader-profile-photo-caption{
  position:absolute;left:16px;right:16px;bottom:16px;
  display:grid;gap:2px;padding:12px 14px;border-radius:14px;
  background:rgba(4,51,82,.91);color:#fff;backdrop-filter:blur(8px);
}
.leader-profile-photo-caption span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.8}
.leader-profile-photo-caption strong{font-size:.95rem}
.leader-profile-copy{
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  padding:clamp(28px,5vw,64px)!important;
}
.leader-profile-copy h1{margin:8px 0!important;color:var(--leader-navy)!important;font-size:clamp(2.2rem,5vw,4.3rem)!important;line-height:.98!important;letter-spacing:-.04em!important}
.leader-profile-copy .governance-profile-role{color:var(--leader-blue)!important;font-size:clamp(1.1rem,2vw,1.5rem)!important;font-weight:850!important}
.leader-profile-copy .lead{max-width:760px!important;color:#506c7a!important;line-height:1.7!important}
.leader-profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}

.leader-profile-sections{display:grid!important;gap:14px!important;padding:clamp(18px,3vw,34px)!important;background:#f7fafc!important}
.leader-profile-section{
  display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:18px!important;
  margin:0!important;padding:clamp(18px,3vw,28px)!important;border:1px solid #dbe7ed!important;
  border-radius:18px!important;background:#fff!important;
}
.leader-profile-section-number{
  display:grid;place-items:center;width:52px;height:52px;border-radius:15px;
  background:var(--leader-navy);color:#fff;font-weight:950;font-size:1rem;
}
.leader-profile-section h2{margin:2px 0 10px!important;color:var(--leader-navy)!important}
.leader-profile-section p{white-space:pre-line!important;color:#405d6b!important;line-height:1.8!important}

/* ===== Gouvernance: toutes les cartes de responsables ===== */
.governance-leader-premium{
  padding:0!important;overflow:hidden!important;border-radius:20px!important;
  border:1px solid var(--leader-line)!important;background:#fff!important;
  box-shadow:0 10px 28px rgba(8,63,95,.07)!important;
}
.governance-leader-premium-visual{display:block!important;text-decoration:none!important}
.governance-leader-premium-photo{
  position:relative!important;height:auto!important;aspect-ratio:4/4.7!important;overflow:hidden!important;background:#edf4f7!important;
}
.governance-leader-premium-photo img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 17%!important;transform:scale(1.04)!important;
}
.governance-leader-premium-info{padding:18px 19px 21px!important}
.governance-leader-premium-info h3{color:var(--leader-navy)!important;font-size:1.2rem!important}
.governance-leader-premium-info>strong{color:#5d7481!important}
.governance-leader-premium-info p{color:#536d79!important;line-height:1.55!important}
.governance-leader-premium-info>a{font-weight:900!important;color:var(--leader-blue)!important}

/* Président sur la page Gouvernance */
.governance-president{
  overflow:hidden!important;border:1px solid rgba(8,127,174,.25)!important;border-radius:26px!important;
  background:linear-gradient(120deg,#fff,#f5fbfd)!important;box-shadow:0 15px 38px rgba(7,61,91,.09)!important;
}
.governance-president-photo{overflow:hidden!important;border-radius:20px!important;background:#eaf3f7!important}
.governance-president-photo>img{
  width:100%!important;height:auto!important;aspect-ratio:4/4.6!important;object-fit:cover!important;object-position:center 17%!important;transform:scale(1.025)!important;
}
.governance-president-copy h3{color:var(--leader-navy)!important;font-size:clamp(1.7rem,3vw,2.7rem)!important}

/* Page biographie Président: renforcer encore la lecture */
.founder-biography-page{overflow:hidden!important}
.founder-biography-lead{
  border:1px solid var(--leader-line)!important;border-radius:26px!important;overflow:hidden!important;
  background:linear-gradient(125deg,#fff,#f4fafc)!important;box-shadow:0 16px 42px rgba(6,57,89,.08)!important;
}
.founder-biography-portrait{min-height:520px!important;background:#eaf3f7!important}
.founder-biography-portrait img{
  width:100%!important;height:100%!important;min-height:520px!important;
  object-fit:cover!important;object-position:center 17%!important;transform:scale(1.025)!important;
}
.founder-biography-copy h1{color:var(--leader-navy)!important;font-size:clamp(2.3rem,5vw,4.4rem)!important;line-height:1!important}
.president-biography-section{border-radius:18px!important;background:#fff!important;box-shadow:0 7px 20px rgba(7,61,91,.05)!important}
.president-biography-section p{white-space:pre-line!important;line-height:1.8!important}

/* ===== Mobile ===== */
@media(max-width:900px){
  .leadership-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .leadership-president-card,.leader-profile-hero{grid-template-columns:1fr!important}
  .leadership-president-copy{padding:25px!important}
  .leadership-president-visual,.leadership-president-photo,.leadership-president-photo img{min-height:0!important}
  .leadership-president-photo{aspect-ratio:4/4.6!important}
  .leader-profile-photo,.leader-profile-photo img{min-height:0!important}.leader-profile-photo{aspect-ratio:4/4.6!important}
}
@media(max-width:620px){
  .leadership-premium-section{width:calc(100% - 20px)!important;margin:20px auto!important;padding:14px!important;border-radius:22px!important}
  .leadership-premium-heading{display:grid!important;gap:12px!important}
  .leadership-premium-heading .btn{width:100%!important}
  .leadership-president-card{margin:14px 0 20px!important;border-radius:20px!important}
  .leadership-president-photo{aspect-ratio:4/4.35!important}
  .leadership-president-photo img{object-position:center 14%!important;transform:scale(1.04)!important}
  .leadership-president-copy{padding:21px 18px 23px!important}
  .leadership-president-copy h2{font-size:2rem!important}
  .leadership-biography-excerpt{font-size:.94rem!important;line-height:1.65!important}
  .leadership-profile-actions{display:grid!important}.leadership-profile-actions .btn{width:100%!important;text-align:center!important}
  .leadership-premium-grid{grid-template-columns:1fr!important;gap:16px!important}
  .leadership-premium-photo{aspect-ratio:4/4.45!important;max-height:440px!important}
  .leadership-premium-photo img{object-position:center 14%!important;transform:scale(1.055)!important}
  .leadership-premium-body{padding:18px!important}
  .leadership-premium-body h3{font-size:1.35rem!important}
  .leadership-premium-body>strong{font-size:1rem!important}
  .leadership-premium-body p{-webkit-line-clamp:5!important;font-size:.92rem!important}

  .leader-profile-premium{border-radius:20px!important}
  .leader-profile-photo{aspect-ratio:4/4.45!important}
  .leader-profile-photo img{object-position:center 14%!important;transform:scale(1.055)!important}
  .leader-profile-copy{padding:24px 18px!important}
  .leader-profile-copy h1{font-size:2.25rem!important}
  .leader-profile-actions{display:grid!important}.leader-profile-actions .btn{width:100%!important;text-align:center!important}
  .leader-profile-sections{padding:12px!important}
  .leader-profile-section{grid-template-columns:44px minmax(0,1fr)!important;gap:12px!important;padding:16px!important}
  .leader-profile-section-number{width:40px;height:40px;border-radius:12px}

  .governance-leader-premium-photo{aspect-ratio:4/4.45!important}
  .governance-leader-premium-photo img{object-position:center 14%!important;transform:scale(1.055)!important}
  .governance-president-photo>img{aspect-ratio:4/4.4!important;object-position:center 14%!important}
  .founder-biography-portrait{min-height:0!important;aspect-ratio:4/4.4!important}
  .founder-biography-portrait img{min-height:0!important;object-position:center 14%!important;transform:scale(1.05)!important}
}


/* ===== Compléments v129.6.84 : À propos, fonctions statutaires et légendes ===== */
.founder-biography-portrait{position:relative!important;overflow:hidden!important}
.founder-biography-portrait figcaption{
  position:absolute;left:16px;right:16px;bottom:16px;
  display:grid;gap:3px;padding:13px 15px;border-radius:14px;
  background:rgba(4,51,82,.91);color:#fff;backdrop-filter:blur(8px)
}
.founder-biography-portrait figcaption strong{font-size:1rem}
.founder-biography-portrait figcaption span{font-size:.82rem;opacity:.84}
.president-biography-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}

.statutory-office.is-filled{overflow:hidden!important}
.statutory-office-portrait{
  display:block;width:100%;margin:-2px 0 12px;border-radius:14px;overflow:hidden;
  aspect-ratio:4/3.7;background:#edf4f7;text-decoration:none
}
.statutory-office-portrait img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center 16%;
  transform:scale(1.05)
}
.statutory-office.is-filled>strong{display:block;color:var(--leader-navy);font-size:1.03rem;line-height:1.2}
.statutory-office.is-filled>a:last-child{font-weight:900;color:var(--leader-blue)}

.about-leadership-premium{overflow:hidden!important}
.about-leadership-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.about-leader-card{
  overflow:hidden;border:1px solid var(--leader-line);border-radius:20px;background:#fff;
  box-shadow:0 9px 26px rgba(7,61,91,.07)
}
.about-leader-photo{display:block;aspect-ratio:4/4.5;overflow:hidden;background:#edf4f7}
.about-leader-photo img{width:100%;height:100%;object-fit:cover;object-position:center 15%;transform:scale(1.045)}
.about-leader-photo>span{display:grid;place-items:center;width:100%;height:100%;font-size:3rem;font-weight:900;color:var(--leader-navy)}
.about-leader-card>div{padding:17px 18px 20px}
.about-leader-card small{color:var(--leader-blue);font-weight:850}
.about-leader-card h3{margin:6px 0 4px;color:var(--leader-navy);font-size:1.2rem;line-height:1.15}
.about-leader-card strong{color:#5d7481}
.about-leader-card p{color:#546e7b;line-height:1.5;font-size:.9rem}
.about-leader-card a{color:var(--leader-blue);font-weight:900;text-decoration:none}

@media(max-width:900px){.about-leadership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  .president-biography-actions{display:grid}.president-biography-actions .btn{width:100%;text-align:center}
  .statutory-office-portrait{aspect-ratio:4/4.1}
  .about-leadership-grid{grid-template-columns:1fr}
  .about-leader-photo{aspect-ratio:4/4.35}
}


/* ===== V129.6.85 — portraits FOBAK inspirés du rendu CEN ===== */
/* Principe repris de CEN : respecter la photo originale au lieu de la recadrer brutalement. */
body.page-index .leadership-premium-section{
  margin:34px 0 44px!important;
  padding:clamp(20px,3vw,38px)!important;
  border:1px solid #d8e6ee!important;
  border-radius:28px!important;
  background:linear-gradient(145deg,#f9fcfe,#eef7fb)!important;
  box-shadow:0 22px 55px rgba(7,57,92,.10)!important;
}
body.page-index .leadership-president-card{
  grid-template-columns:minmax(260px,34%) 1fr!important;
  gap:30px!important;
  align-items:center!important;
  margin:24px 0!important;
  padding:22px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid #dbe8ef!important;
  box-shadow:0 14px 34px rgba(7,57,92,.09)!important;
}
body.page-index .leadership-president-visual{
  min-height:0!important;
  background:transparent!important;
}
body.page-index .leadership-president-photo{
  display:block!important;
  width:100%!important;
  height:430px!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#e8f1f6!important;
}
body.page-index .leadership-president-photo img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
}
body.page-index .leadership-photo-badge{
  left:14px!important;bottom:14px!important;
  background:rgba(5,61,96,.92)!important;
  color:#fff!important;
}
body.page-index .leadership-president-copy{
  padding:10px 8px!important;
}
body.page-index .leadership-president-copy h2{
  font-size:clamp(1.8rem,3vw,3rem)!important;
  margin:8px 0!important;
  color:#073e66!important;
}
body.page-index .leadership-president-copy>strong{color:#9a7310!important}
body.page-index .leadership-biography-excerpt{line-height:1.75!important;color:#506775!important}

body.page-index .leadership-premium-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
body.page-index .leadership-premium-card{
  min-width:0!important;
  border-radius:22px!important;
  border:1px solid #dce8ee!important;
  box-shadow:0 12px 30px rgba(7,57,92,.08)!important;
}
body.page-index .leadership-premium-photo{
  display:block!important;
  width:100%!important;
  height:285px!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  background:#edf4f7!important;
  overflow:hidden!important;
}
body.page-index .leadership-premium-photo img{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
  transition:transform .25s ease!important;
}
body.page-index .leadership-premium-card:hover .leadership-premium-photo img{transform:scale(1.025)!important}
body.page-index .leadership-premium-body{padding:18px!important}
body.page-index .leadership-premium-body .leader-number{
  width:42px!important;height:42px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:#073e66!important;color:#f4c542!important;font-weight:950!important;
}
body.page-index .leadership-premium-body h3{
  margin:12px 0 6px!important;color:#143f58!important;font-size:1.18rem!important;
}
body.page-index .leadership-premium-body>strong{color:#9c7204!important;line-height:1.35!important}
body.page-index .leadership-premium-body p{color:#5f747f!important;line-height:1.55!important}
body.page-index .leadership-profile-link{color:#08779b!important}

/* Les autres pages publiques héritent aussi du cadrage respectueux de CEN. */
.about-leader-photo img,
.governance-leader-premium-photo img,
.governance-president-photo>img,
.leader-profile-photo img,
.founder-biography-portrait img{
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
  background:#edf4f7!important;
}
@media(max-width:1100px){
  body.page-index .leadership-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  body.page-index .leadership-president-card{grid-template-columns:1fr!important;padding:15px!important;gap:16px!important}
  body.page-index .leadership-president-photo{height:390px!important}
  body.page-index .leadership-premium-grid{grid-template-columns:1fr!important}
  body.page-index .leadership-premium-photo{height:330px!important}
  body.page-index .leadership-president-copy{padding:8px 4px 10px!important}
}
@media(max-width:500px){
  body.page-index .leadership-premium-photo{height:300px!important}
  body.page-index .leadership-president-photo{height:360px!important}
  body.page-index .leadership-premium-section{padding:15px!important;border-radius:20px!important}
}
