:root{
  --navy:#0D3661;--navy-2:#082A4F;--teal:#2DB56C;--teal-2:#198E59;--coral:#F18921;--gold:#F5B230;--sky:#1FA8E5;--purple:#6A3FA0;--ink:#18375E;--muted:#667085;--cream:#FBFAF7;--soft:#F7F5F0;--line:#E7E4DC;--white:#fff;--shadow:0 12px 30px rgba(13,54,97,.11);--radius:18px;--container:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff;line-height:1.55}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button,input{font:inherit}.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}.section{padding:58px 0}.section.compact{padding-top:22px}.soft{background:linear-gradient(180deg,#fbfaf7,#f6f3ec)}.section-kicker{margin:0 0 6px;font-size:.72rem;letter-spacing:.16em;font-weight:800;color:var(--teal)}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.08;margin:0}h2{font-size:clamp(2rem,3.2vw,3rem)}p{margin:0}.site-header{height:92px;background:#fff;position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(7,47,97,.08)}.header-inner{height:100%;display:flex;align-items:center;gap:34px}.brand{width:190px;flex:0 0 auto}.brand img{width:100%;height:70px;object-fit:contain;mix-blend-mode:multiply}.main-nav{display:flex;align-items:center;justify-content:center;gap:29px;margin-left:auto}.main-nav a{font-size:.92rem;font-weight:700;color:#17345d;position:relative}.main-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--teal);transition:.25s}.main-nav a:hover:after{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:13px 22px;font-weight:800;border:1px solid transparent;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--navy);color:white}.header-cta{padding:12px 20px;white-space:nowrap}.btn-coral{background:var(--coral);color:#fff}.btn-outline-light{border-color:rgba(255,255,255,.75);color:#fff;background:rgba(0,0,0,.18);backdrop-filter:blur(8px)}.menu-toggle{display:none;margin-left:auto;border:0;background:none;width:42px;padding:8px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:6px 0}.hero-slider{position:relative;overflow:hidden;background:#071f3d}.slides{height:520px;position:relative}.slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s ease;background-image:var(--slide-image);background-size:cover;background-position:center}.slide.is-active{opacity:1;pointer-events:auto}.slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,43,.92) 0%,rgba(4,22,43,.62) 38%,rgba(4,22,43,.08) 75%)}.slide-content{position:relative;z-index:2;height:100%;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;gap:60px}.hero-copy{color:#fff;max-width:580px}.eyebrow{font-size:.75rem;letter-spacing:.16em;font-weight:800;margin-bottom:14px;color:#bde7df}.hero-copy h1{font-size:clamp(2rem,3.3vw,4.2rem);margin-bottom:18px}.hero-copy>p:not(.eyebrow){max-width:520px;font-size:1.05rem;color:rgba(255,255,255,.88)}.hero-actions{display:flex;gap:14px;margin-top:26px}.featured-book{background:rgba(255,255,255,.95);border-radius:20px;padding:22px;display:grid;grid-template-columns:140px 1fr;gap:22px;align-items:center;box-shadow:0 25px 55px rgba(0,0,0,.25)}.featured-book img{width:140px;height:208px;object-fit:cover;border-radius:8px;box-shadow:0 12px 20px rgba(0,0,0,.2)}.featured-book h2{font-size:2rem;margin:8px 0 10px}.featured-book p{color:var(--muted);margin-bottom:14px}.featured-book a{font-weight:800;color:var(--navy)}.pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#dff6f2;color:var(--teal-2);font-size:.67rem;font-weight:900}.slider-arrow,.rail-btn{position:absolute;border:0;border-radius:50%;background:#fff;color:var(--navy);box-shadow:var(--shadow);cursor:pointer;z-index:4}.slider-arrow{top:50%;transform:translateY(-50%);width:48px;height:48px;font-size:2rem}.slider-arrow.prev{left:18px}.slider-arrow.next{right:18px}.slider-dots{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:4;display:flex;gap:8px}.slider-dots button{width:8px;height:8px;border-radius:50%;border:0;background:rgba(255,255,255,.55);padding:0}.slider-dots button.active{width:24px;border-radius:99px;background:#fff}.audience-grid{display:grid;grid-template-columns:.8fr repeat(3,1fr);gap:18px;align-items:stretch}.audience-intro{padding:30px 18px 20px 0}.audience-intro h2{margin-bottom:18px}.audience-intro p{color:var(--muted);margin-bottom:24px}.text-link{font-weight:800;color:var(--navy)}.audience-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(20,40,70,.06);transition:.3s}.audience-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.audience-card>img{height:128px;width:100%;object-fit:cover}.audience-card>div{padding:18px 18px 20px;position:relative}.audience-card h3{font-size:1.45rem;margin:4px 0 6px}.audience-card p{font-size:.9rem;color:var(--muted);min-height:72px}.audience-card a{display:inline-block;margin-top:12px;font-weight:800;color:var(--teal)}.audience-card .gold-link{color:#d98d00}.round-icon{width:40px;height:40px;border-radius:50%;display:inline-grid;place-items:center;color:#fff;font-weight:900;box-shadow:0 8px 16px rgba(0,0,0,.12)}.teal{background:var(--teal)}.blue{background:var(--navy)}.gold{background:var(--gold)}.coral{background:var(--coral)}.sky{background:var(--sky)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-heading>a{font-weight:800;color:var(--navy);font-size:.9rem}.book-rail-wrap{position:relative}.book-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(165px,1fr);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:3px 2px 15px}.book-rail::-webkit-scrollbar{display:none}.book-card{scroll-snap-align:start}.book-card img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:9px;box-shadow:0 10px 24px rgba(0,0,0,.18);transition:.3s}.book-card:hover img{transform:translateY(-6px) rotate(-1deg)}.book-card h3{font-family:'DM Sans',sans-serif;font-size:.92rem;margin:12px 0 2px}.book-card p{font-size:.78rem;color:var(--muted)}.book-card>div{display:flex;justify-content:space-between;margin-top:8px;font-size:.72rem}.book-card b{color:var(--teal)}.rail-btn{top:42%;transform:translateY(-50%);width:44px;height:44px;font-size:1.7rem}.rail-prev{left:-54px}.rail-next{right:-54px}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.action-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 22px rgba(20,40,70,.06)}.action-card img{width:100%;height:145px;object-fit:cover}.action-card>div{padding:16px;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}.action-card h3{font-family:'DM Sans',sans-serif;font-size:1rem;margin-bottom:4px}.action-card p{font-size:.84rem;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-grid article{display:flex;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 7px 18px rgba(20,40,70,.05)}.service-grid h3{font-family:'DM Sans',sans-serif;font-size:1rem;margin-bottom:5px}.service-grid p{font-size:.82rem;color:var(--muted)}.stats-band{background:linear-gradient(110deg,var(--navy),var(--teal));color:#fff;position:relative;overflow:hidden}.stats-band:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.12) 0 1px,transparent 2px);background-size:32px 32px;opacity:.35}.stats-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);padding:30px 0}.stats-grid div{text-align:center;border-right:1px solid rgba(255,255,255,.3)}.stats-grid div:last-child{border:0}.stats-grid span{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700}.stats-grid p{font-size:.85rem;color:rgba(255,255,255,.84)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-grid blockquote{margin:0;background:#fff;border-radius:16px;padding:20px;display:grid;grid-template-columns:72px 1fr;gap:15px;align-items:center;box-shadow:0 8px 22px rgba(20,40,70,.06)}.testimonial-grid blockquote p{font-style:italic;color:#49546a}.testimonial-grid footer{grid-column:2;display:flex;flex-direction:column}.avatar{width:72px;height:72px;border-radius:50%;background-size:cover;background-position:center}.avatar-a{background-image:url('assets/images/2149215422.webp')}.avatar-b{background-image:url('assets/images/31639.webp')}.avatar-c{background-image:url('assets/images/2910.webp')}.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.news-grid article{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 22px rgba(20,40,70,.06)}.news-grid img{width:100%;height:160px;object-fit:cover}.news-grid article>div{padding:15px}.news-meta{display:flex;justify-content:space-between;font-size:.67rem;color:var(--muted)}.news-meta span{color:var(--teal);font-weight:900}.news-grid h3{font-family:'DM Sans',sans-serif;font-size:1rem;margin:8px 0 12px}.news-grid a{font-weight:800;color:var(--navy);font-size:.84rem}.newsletter{background:linear-gradient(105deg,#06376f 0%,#0b8c96 76%);color:#fff;overflow:hidden}.newsletter-inner{display:grid;grid-template-columns:auto 1fr minmax(380px,.9fr);align-items:center;gap:26px;padding:32px 0}.newsletter-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--navy);font-size:2rem}.newsletter h2{font-size:2rem}.newsletter p{color:rgba(255,255,255,.8)}.newsletter-form{display:flex;background:#fff;border-radius:999px;overflow:hidden}.newsletter-form input{min-width:0;flex:1;border:0;padding:0 20px;outline:none}.newsletter-form button{border:0;background:var(--coral);color:#fff;font-weight:900;padding:15px 24px;cursor:pointer}.site-footer{background:var(--navy-2);color:#fff;padding:46px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr 1fr;gap:50px}.footer-brand img{width:190px;height:74px;object-fit:contain;background:#fff;border-radius:8px;padding:4px;margin-bottom:12px}.footer-grid h3{font-family:'DM Sans',sans-serif;font-size:1rem;margin-bottom:14px}.footer-grid a,.footer-grid p{display:block;color:rgba(255,255,255,.76);font-size:.85rem;margin:7px 0}.socials{display:flex;gap:8px;margin-top:16px}.socials a{width:34px;height:34px;border:1px solid rgba(255,255,255,.38);border-radius:50%;display:grid;place-items:center;margin:0}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:28px;padding-top:18px;display:flex;justify-content:space-between;color:rgba(255,255,255,.56);font-size:.75rem}.back-to-top{position:fixed;right:22px;bottom:22px;width:45px;height:45px;border-radius:50%;border:0;background:var(--navy);color:#fff;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.25s}.back-to-top.show{opacity:1;pointer-events:auto}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.main-nav{gap:17px}.header-cta{display:none}.slide-content{grid-template-columns:1fr .8fr;gap:30px}.featured-book{grid-template-columns:110px 1fr}.featured-book img{width:110px;height:165px}.audience-grid{grid-template-columns:repeat(2,1fr)}.audience-intro{grid-column:1/-1}.action-grid,.news-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.rail-prev{left:-10px}.rail-next{right:-10px}}
@media(max-width:760px){.site-header{height:74px}.brand{width:145px}.brand img{height:58px}.menu-toggle{display:block}.main-nav{position:fixed;top:74px;left:0;right:0;background:#fff;display:none;flex-direction:column;padding:24px;border-top:1px solid var(--line);box-shadow:var(--shadow)}.main-nav.open{display:flex}.slides{height:690px}.slide-content{grid-template-columns:1fr;align-content:center;gap:28px}.hero-copy h1{font-size:3.1rem}.featured-book{max-width:420px;grid-template-columns:100px 1fr}.featured-book img{width:100px;height:150px}.slider-arrow{width:40px;height:40px}.audience-grid{grid-template-columns:1fr}.audience-intro{padding-right:0}.book-rail{grid-auto-columns:45%}.action-grid,.service-grid,.news-grid,.testimonial-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-grid div{padding:14px;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.stats-grid div:last-child{grid-column:1/-1}.newsletter-inner{grid-template-columns:auto 1fr}.newsletter-form{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:8px}.section{padding:44px 0}}
@media(max-width:520px){.container{width:min(calc(100% - 26px),var(--container))}.slides{height:740px}.slide-content{padding-top:20px}.hero-copy h1{font-size:2.7rem}.hero-actions{flex-direction:column;align-items:flex-start}.featured-book{grid-template-columns:82px 1fr;padding:15px;gap:14px}.featured-book img{width:82px;height:124px}.featured-book h2{font-size:1.35rem}.featured-book p{font-size:.8rem}.slider-arrow{top:45%}.book-rail{grid-auto-columns:68%}.section-heading{align-items:flex-start}.section-heading>a{display:none}.action-card>div{grid-template-columns:auto 1fr}.stats-grid{grid-template-columns:1fr}.stats-grid div:last-child{grid-column:auto}.newsletter-inner{grid-template-columns:1fr;text-align:center}.newsletter-icon{margin:auto}.newsletter-form{grid-column:auto;flex-direction:column;background:transparent;gap:10px}.newsletter-form input{background:white;border-radius:999px;padding:15px 18px}.newsletter-form button{border-radius:999px}.footer-grid{grid-template-columns:1fr}.footer-bottom{align-items:flex-start}.audience-card>img{height:165px}}
/* Adaptation réseau & compétences */
.featured-profile{grid-template-columns:150px 1fr;align-items:center}
.featured-profile img{width:150px;height:190px;border-radius:14px;object-fit:cover;object-position:center}
.profile-role{font-weight:800;color:var(--teal)!important;margin:.2rem 0 .45rem}
.competency-card img{aspect-ratio:4/5;object-fit:cover;object-position:center}
.competency-card h3{margin-top:12px}
.competency-card p{min-height:42px}
.service-grid-enriched{grid-template-columns:repeat(3,1fr)}
.services-more{display:flex;justify-content:center;margin-top:28px}
@media(max-width:1050px){.service-grid-enriched{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.featured-profile{grid-template-columns:105px 1fr}.featured-profile img{width:105px;height:142px}.service-grid-enriched{grid-template-columns:1fr}}
@media(max-width:520px){.featured-profile{grid-template-columns:82px 1fr}.featured-profile img{width:82px;height:112px}.profile-role{font-size:.78rem}.competency-card p{min-height:0}}

/* Navigation active state */
.main-nav a.active{color:var(--teal-2)}
.main-nav a.active::after{width:100%}
/* Perfectly circular icons: never shrink or distort */
.round-icon,.service-grid .round-icon,.action-card .round-icon{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;aspect-ratio:1;border-radius:999px;display:grid;place-items:center;line-height:1;padding:0}
.service-grid article{align-items:flex-start}
.action-card>div{align-items:center}
.action-card .round-icon{align-self:start;margin-top:1px}
.action-card h3{line-height:1.25;margin:0 0 5px}
/* Competence carousel cards use portrait ratios and always overflow at desktop */
.competency-card img{aspect-ratio:4/5;object-position:center top}
@media(min-width:1060px){.book-rail{grid-auto-columns:170px}}
/* Internal header calibration */
.inner-hero{min-height:430px;display:flex;align-items:center;background-position:center 36%}
.inner-hero-content{padding-block:70px;max-width:720px}
.inner-hero-content h1{font-size:clamp(2.8rem,5vw,4.8rem);max-width:760px}
.inner-hero-content>p:not(.eyebrow){max-width:650px}
@media(max-width:760px){.inner-hero{min-height:520px}.inner-hero-content{padding-block:56px}.main-nav a.active::after{bottom:-3px}}


/* =========================================================
   Identité officielle Plus-Value — Wordmark vivant
   ========================================================= */
.site-header{height:96px;border-bottom:1px solid rgba(13,54,97,.10)}
.header-inner{gap:28px}
.brand{width:220px;display:flex;align-items:center}
.brand img{width:100%;height:64px;object-fit:contain;object-position:left center;mix-blend-mode:normal}
.main-nav a{color:var(--navy)}
.main-nav a:after{height:3px;border-radius:8px;background:linear-gradient(90deg,var(--sky),var(--teal),var(--gold),var(--coral))}
.main-nav a.active{color:var(--navy)}
.main-nav a.active:after{width:100%}
.btn-primary{background:linear-gradient(135deg,var(--navy),#155C98);box-shadow:0 8px 20px rgba(13,54,97,.20)}
.btn-coral{background:linear-gradient(135deg,var(--coral),#F36B29)}
.pill{background:rgba(45,181,108,.13);color:var(--teal-2)}
.text-link,.section-heading>a,.news-grid a,.featured-book a{color:var(--navy)}
.stats-band{background:linear-gradient(108deg,var(--navy) 0%,#126DA0 38%,#16A3A6 68%,var(--teal) 100%)}
.newsletter{background:linear-gradient(105deg,var(--navy) 0%,#0E6E92 50%,#159C92 100%)}
.site-footer{background:linear-gradient(120deg,#082A4F,var(--navy) 58%,#0B4471)}
.footer-brand img{width:240px;height:74px;object-fit:contain;object-position:left center;mix-blend-mode:normal;margin-bottom:14px}
.round-icon{flex:0 0 40px;aspect-ratio:1/1}
.teal{background:var(--teal)}.sky{background:var(--sky)}.gold{background:var(--gold)}.coral{background:var(--coral)}

/* Cohérence des en-têtes internes */
.internal-header-section.inner-hero{height:470px;min-height:470px}
.internal-header-section .inner-hero-content{width:min(100%,680px);padding:64px 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.internal-header-section .inner-hero-content>*{max-width:650px}
.internal-header-section.inner-hero h1{font-size:clamp(2.7rem,4.3vw,4.65rem);line-height:1.02;margin:10px 0 18px;text-wrap:balance}
.internal-header-section.inner-hero p{font-size:1.02rem;line-height:1.65}
.internal-header-section .hero-actions{margin-top:22px}
.internal-header-section.profile-hero,.internal-header-section.article-head,.internal-header-section.legal-page{min-height:470px;display:flex;align-items:center;padding:58px 0}
.internal-header-section.profile-hero h1,.internal-header-section.article-head h1,.internal-header-section.legal-page h1{font-size:clamp(2.65rem,4.2vw,4.5rem);line-height:1.04}
.article-head .article-hero-grid,.profile-hero .profile-hero-grid{width:100%}

/* Accent chromatique du wordmark vivant */
h1,h2,h3{color:var(--navy)}
.eyebrow,.section-kicker{color:var(--sky)}
.service-grid article:nth-child(4n+1) .round-icon,.action-grid article:nth-child(4n+1) .round-icon{background:var(--teal)}
.service-grid article:nth-child(4n+2) .round-icon,.action-grid article:nth-child(4n+2) .round-icon{background:var(--sky)}
.service-grid article:nth-child(4n+3) .round-icon,.action-grid article:nth-child(4n+3) .round-icon{background:var(--gold);color:var(--navy)}
.service-grid article:nth-child(4n+4) .round-icon,.action-grid article:nth-child(4n+4) .round-icon{background:var(--coral)}

@media(max-width:1050px){
  .brand{width:195px}.main-nav{gap:17px}.main-nav a{font-size:.82rem}.header-cta{padding:11px 15px}
}
@media(max-width:860px){
  .site-header{height:82px}.brand{width:190px}.brand img{height:54px}
  .internal-header-section.inner-hero{height:auto;min-height:500px}
  .internal-header-section .inner-hero-content{padding:60px 0}
}
@media(max-width:760px){
  .brand{width:174px}.internal-header-section.inner-hero{min-height:500px}
  .internal-header-section.inner-hero h1{font-size:clamp(2.45rem,11vw,3.25rem)}
  .internal-header-section.profile-hero,.internal-header-section.article-head,.internal-header-section.legal-page{min-height:auto;padding:42px 0}
}

/* =========================================================
   V2 — Lisibilité, cohérence des en-têtes et identité sombre
   ========================================================= */
/* Tous les titres placés sur une image sombre restent blancs. */
.hero-copy h1,
.hero-copy h2,
.inner-hero h1,
.inner-hero h2,
.inner-hero-content h1,
.inner-hero-content h2{
  color:#fff !important;
  text-shadow:0 2px 18px rgba(0,0,0,.24);
}
.hero-copy .eyebrow,
.inner-hero-content .eyebrow{color:#d8fff5 !important}

/* Newsletter : contraste renforcé avant le footer. */
.newsletter h2{color:#fff !important}
.newsletter p{color:rgba(255,255,255,.88) !important}
.newsletter-icon{color:#fff}

/* Logo officiel sur fonds sombres — logo blanc SVG, AUCUN fond. */
.footer-brand img{
  filter:none;
  mix-blend-mode:normal;
  object-fit:contain;
  object-position:left center;
  background:transparent;   /* retrait de l'ancien fond blanc (logo blanc = invisible dessus) */
  padding:0;
  border-radius:0;
}

/* Carrousel de compétences : boucle visuelle fluide. */
.book-rail[data-infinite-rail]{
  scroll-snap-type:none;
  overscroll-behavior-inline:contain;
  cursor:grab;
}
.book-rail[data-infinite-rail].is-dragging{cursor:grabbing;scroll-behavior:auto}

/* En-têtes internes : même hauteur, textes plus mesurés et alignement sur le bord du logo. */
.internal-header-section{
  min-height:440px !important;
  height:440px !important;
  overflow:hidden;
}
.internal-header-section .container,
.internal-header-section .inner-hero-content,
.internal-header-section .article-hero-grid,
.internal-header-section .profile-hero-grid{
  width:min(calc(100% - 40px),var(--container));
  margin-inline:auto;
}
.internal-header-section .inner-hero-content{
/*  width:100%;*/
  max-width:none;
  padding:48px 0;
}
.internal-header-section .inner-hero-content > *{
  max-width:610px;
}
.internal-header-section.inner-hero h1,
.internal-header-section .inner-hero-content h1,
.internal-header-section.profile-hero h1,
.internal-header-section.article-head h1,
.internal-header-section.legal-page h1{
/*  font-size:clamp(2.15rem,3.55vw,3.65rem) !important;*/
  font-size: clamp(2.15rem,3.5vw,3.5rem) !important;
  line-height:1.05 !important;
  margin:8px 0 14px !important;
  text-wrap:balance;
}
.internal-header-section .inner-hero-content > p:not(.eyebrow),
.internal-header-section.profile-hero p,
.internal-header-section.article-head p,
.internal-header-section.legal-page p{
  font-size:.98rem !important;
  line-height:1.55 !important;
  max-width:600px;
}
.internal-header-section .hero-actions{margin-top:18px}

/* En-têtes avec grille (profil / article) calibrés dans la même hauteur. */
.internal-header-section.profile-hero,
.internal-header-section.article-head,
.internal-header-section.legal-page{
  padding:34px 0 !important;
  display:flex;
  align-items:center;
}
.internal-header-section .article-hero-grid,
.internal-header-section .profile-hero-grid{
  align-items:center;
  gap:38px;
}
.internal-header-section .article-cover{
  height:330px;
  border-radius:18px 18px 58px 18px;
}
.internal-header-section .profile-portrait{
  height:330px;
  width:280px;
  justify-self:start;
}

@media(max-width:860px){
  .internal-header-section{
    height:auto !important;
    min-height:480px !important;
  }
  .internal-header-section .inner-hero-content{padding:52px 0}
  .internal-header-section.profile-hero,
  .internal-header-section.article-head,
  .internal-header-section.legal-page{min-height:auto !important;height:auto !important}
  .internal-header-section .article-cover{height:280px}
}
@media(max-width:760px){
  .internal-header-section .container,
  .internal-header-section .inner-hero-content,
  .internal-header-section .article-hero-grid,
  .internal-header-section .profile-hero-grid{
    width:min(calc(100% - 26px),var(--container));
  }
  .internal-header-section.inner-hero h1,
  .internal-header-section .inner-hero-content h1,
  .internal-header-section.profile-hero h1,
  .internal-header-section.article-head h1,
  .internal-header-section.legal-page h1{
    font-size:clamp(2rem,10vw,2.85rem) !important;
  }
  .internal-header-section{min-height:500px !important}
  .internal-header-section .article-hero-grid,
  .internal-header-section .profile-hero-grid{grid-template-columns:1fr;gap:22px}
  .internal-header-section .article-cover{height:220px}
  .internal-header-section .profile-portrait{height:240px;width:190px}
}

/* =========================================================
   Phase 1 — Cartes « Nos actions » (accueil)
   Icône à gauche + titre juste à droite (centré vertical.),
   description en pleine largeur dessous, alignée à gauche.
   Passage de display:grid à display:flex.
   ========================================================= */
.action-card>div{
  display:flex;
  flex-wrap:wrap;
  align-items:center;        /* icône et titre centrés verticalement sur la 1re ligne */
  gap:10px 14px;             /* 10px entre les lignes · 14px entre icône et titre */
  padding:18px;
}
.action-card .round-icon{align-self:center;margin-top:0}
.action-card h3{flex:1;min-width:0;margin:0;line-height:1.25}
.action-card p{flex:0 0 100%;margin:0}   /* description sur toute la largeur du bloc (padding inclus) */

/* =========================================================
   Menu principal avec sous-menus déroulants (une seule ligne)
   ========================================================= */
.main-nav .nav-group{position:relative;display:flex;align-items:center}
.main-nav .nav-top{position:relative;background:none;border:0;cursor:pointer;font:inherit;font-size:.92rem;font-weight:700;color:var(--navy);display:inline-flex;align-items:center;gap:6px;padding:0}
.main-nav .nav-top .caret{font-size:.62em;transition:.25s;color:var(--teal)}
.main-nav .nav-group:hover .caret,.main-nav .nav-group:focus-within .caret{transform:rotate(180deg)}
.main-nav .nav-top:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:3px;border-radius:8px;background:linear-gradient(90deg,var(--sky),var(--teal),var(--gold),var(--coral));transition:.25s}
.main-nav .nav-group:hover .nav-top:after,.main-nav .nav-group:focus-within .nav-top:after{width:100%}
.main-nav .nav-group:before{content:"";position:absolute;top:100%;left:-10px;right:-10px;height:18px}
.main-nav .submenu{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%) translateY(8px);min-width:238px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transition:.22s;z-index:60}
.main-nav .nav-group:hover .submenu,.main-nav .nav-group:focus-within .submenu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.main-nav .submenu a{padding:11px 14px;border-radius:10px;font-size:.9rem;font-weight:600;color:var(--ink);white-space:nowrap}
.main-nav .submenu a:after{display:none!important}
.main-nav .submenu a:hover{background:var(--soft);color:var(--navy)}
@media(max-width:760px){
  .main-nav .nav-group{display:block}
  .main-nav .nav-group:before{display:none}
  .main-nav .nav-top{width:100%;justify-content:flex-start;gap:8px;padding:10px 0 4px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;cursor:default}
  .main-nav .nav-top:after{display:none}
  .main-nav .nav-top .caret{display:none}
  .main-nav .submenu{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:0;padding:0 0 6px;min-width:0;background:transparent}
  .main-nav .submenu a{padding:9px 0;font-weight:700;color:var(--navy)}
}

/* =========================================================
   Menu principal en MAJUSCULES (entrées de premier niveau)
   ========================================================= */
.main-nav>a,.main-nav .nav-top{text-transform:uppercase;letter-spacing:.03em}
/* Filtres : rendre l'attribut [hidden] autoritaire (sinon display:flex des cartes l'écrase) */
[hidden]{display:none!important}
/* Marqueur de page active sur le menu : barre multicolore permanente sur le parent */
.main-nav .nav-top.active:after{width:100%}
.main-nav .nav-top.active{color:var(--navy)}
/* Rail compétences : cartes de hauteur égale + libellés alignés en bas */
.competency-card{display:flex;flex-direction:column}
.competency-card>div{margin-top:auto;align-items:center;padding-top:6px}
/* pastille arrondie colorée (catégorie, à gauche) */
.competency-card>div>span{background:rgba(13,54,97,.08);color:var(--navy);font-weight:700;padding:4px 11px;border-radius:999px;line-height:1.6;white-space:nowrap}
.competency-card>div>b{color:var(--teal);font-weight:800;white-space:nowrap}
/* Défilement continu (marquee CSS) du rail compétences */
.book-rail[data-infinite-rail]{overflow:hidden;display:block}
.marq{display:flex;align-items:stretch;gap:24px;width:max-content;will-change:transform;animation:pv-marquee linear infinite}
.marq>.book-card{flex:0 0 170px;width:170px}
@keyframes pv-marquee{from{transform:translateX(0)}to{transform:translateX(var(--pv-shift,-50%))}}
.book-rail-wrap:hover .marq{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.marq{animation:none}}

/* =========================================================
   Cartes « Pour qui » — icône flottante à gauche du titre,
   texte enrichi, et liens alignés en bas quelle que soit la hauteur
   ========================================================= */
.audience-card>div{display:flex;flex-direction:column;padding:20px 18px}
.audience-card .ac-body{flex:1;display:flow-root}
.audience-card .ac-body .round-icon{float:left;margin:2px 12px 6px 0}
.audience-card .ac-body h3{margin:0 0 6px;font-size:1.3rem}
.audience-card .ac-body p{margin:0;color:var(--muted);font-size:.9rem;min-height:0}
.audience-card>div>a{margin-top:16px;font-weight:800}

/* =========================================================
   Bannière d'annonce — Festival Meguila (événement majeur)
   ========================================================= */
.meguila-banner{background:linear-gradient(135deg,#fdf5ea,#fbe9d8);border-top:1px solid #f0e3d0;border-bottom:1px solid #f0e3d0}
.meguila-inner{display:grid;grid-template-columns:300px 1fr;gap:46px;align-items:center}
.meguila-poster{display:block}
.meguila-poster img{width:100%;border-radius:16px;box-shadow:0 22px 55px rgba(0,0,0,.22);transition:.3s}
.meguila-poster:hover img{transform:translateY(-5px)}
.meguila-copy .eyebrow{color:var(--coral);font-size:.8rem;letter-spacing:.14em;font-weight:800}
.meguila-copy h2{margin:6px 0 0}
.meguila-copy h2 span{color:var(--coral)}
.meguila-lead{color:#5a4a3a;max-width:660px;margin:12px 0 16px;font-size:1.02rem}
.meguila-facts{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.meguila-facts span{background:#fff;border:1px solid #efe2cf;border-radius:999px;padding:9px 16px;font-weight:800;color:var(--navy);font-size:.9rem}
.meguila-highlights{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px 24px;margin:0 0 22px;font-weight:600;color:var(--ink)}
@media(max-width:820px){.meguila-inner{grid-template-columns:1fr;gap:26px}.meguila-poster{max-width:280px;margin:0 auto}}
