@font-face{font-family:'Plus Jakarta Sans';font-weight:400;font-style:normal;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-400-normal.woff2) format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:500;font-style:normal;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-500-normal.woff2) format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-600-normal.woff2) format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-700-normal.woff2) format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:800;font-style:normal;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-800-normal.woff2) format('woff2');}
/* ============================================================
   Navalior Media — thème institutionnel (v8)
   Base blanche, bleu marine profond, bleu électrique en accent.
   ============================================================ */
:root{
  --marine:#051c2c;        /* bleu marine profond : titres, blocs sombres */
  --marine-2:#0b2f4a;
  --bleu:#85692f;          /* accent or foncé : liens, repères (lisible sur blanc) */
  --bleu-fonce:#6b5324;
  --cyan:#d4bd8a;          /* or clair sur fond sombre */
  --blanc:#ffffff;
  --gris:#f3f5f7;          /* aplats clairs */
  --gris-2:#e6eaee;
  --encre:#0f1a24;
  --encre-2:#4d5b68;
  --ligne:#dde2e7;
  --ligne-forte:#aeb8c2;
  --ligne-nuit:rgba(255,255,255,.18);
  --txt-nuit:rgba(255,255,255,.78);
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  /* alias conservés pour les styles en ligne existants */
  --nuit:var(--marine); --or:#b99a5b; --or-clair:var(--cyan); --or-fonce:var(--bleu); --ligne-or:rgba(185,154,91,.45);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--blanc);color:var(--encre);font-family:var(--sans);font-size:16.5px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
button,a{-webkit-tap-highlight-color:transparent;}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.14;letter-spacing:-.012em;color:var(--marine);}
:focus-visible{outline:2px solid var(--bleu);outline-offset:3px;}
.wrap{max-width:1360px;margin:0 auto;padding:0 48px;}
section{padding:104px 0;}

/* ---------- boutons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:500 15px var(--sans);padding:15px 28px;border:1px solid transparent;border-radius:0;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s,border-color .2s;}
.btn-or{background:var(--marine);color:#fff;}
.btn-or:hover{background:var(--marine-2);}
.btn-line{border-color:var(--marine);color:var(--marine);}
.btn-line:hover{background:var(--marine);color:#fff;}
.btn-marine{background:var(--marine);color:#fff;}
.btn-marine:hover{background:var(--marine-2);}
/* boutons sur fond sombre */
.mission .btn-or,.direct .btn-or,.abonne .btn-or,.cta .btn-or,.cta .btn-marine{background:#fff;color:var(--marine);}
.mission .btn-or:hover,.direct .btn-or:hover,.abonne .btn-or:hover,.cta .btn-or:hover,.cta .btn-marine:hover{background:var(--gris-2);}
.direct .btn-line,.abonne .btn-line,.mission .btn-line{border-color:rgba(255,255,255,.55);color:#fff;}
.direct .btn-line:hover,.abonne .btn-line:hover,.mission .btn-line:hover{background:#fff;color:var(--marine);}

/* ---------- en-tête ---------- */
header.site{position:fixed;inset:0 0 auto 0;z-index:100;height:84px;display:flex;align-items:center;background:rgba(255,255,255,.97);backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--ligne);color:var(--marine);}
header.site .wrap{width:100%;max-width:1360px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.brand{display:flex;align-items:center;gap:14px;flex:none;}
.brand img{width:48px;height:48px;border-radius:50%;}
.brand-name{font:500 21px/1.15 var(--serif);letter-spacing:-.005em;white-space:nowrap;color:var(--marine);}
.brand-name small{display:block;font:400 12px var(--sans);color:var(--encre-2);letter-spacing:.01em;margin-top:2px;}
nav.main{display:flex;align-items:center;gap:0;}
nav.main > a,.dd-btn{font:500 14px var(--sans);color:var(--marine);padding:10px 10px;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:7px;white-space:nowrap;position:relative;transition:color .15s;}
nav.main > a:hover,.dd-btn:hover,.dd.open .dd-btn{color:var(--bleu);}
nav.main a[aria-current]{color:var(--bleu);}
nav.main a[aria-current]::after{content:"";position:absolute;left:10px;right:10px;bottom:2px;height:2px;background:#b99a5b;}
.dd{position:relative;}
.dd-btn svg{width:9px;height:9px;opacity:.7;transition:transform .2s;}
.dd.open .dd-btn svg{transform:rotate(180deg);}
.dd-menu{position:absolute;top:calc(100% + 20px);left:-8px;min-width:300px;background:#fff;border:1px solid var(--ligne);border-top:3px solid #b99a5b;padding:8px 0;display:none;box-shadow:0 24px 48px rgba(5,28,44,.14);}
.dd-menu::before{content:"";position:absolute;left:0;right:0;top:-24px;height:24px;}
.dd.open .dd-menu{display:block;}
.dd-menu a{display:block;padding:12px 24px;font-size:14.5px;color:var(--marine);}
.dd-menu a:hover,.dd-menu a:focus-visible{background:var(--gris);color:var(--bleu);outline-offset:-2px;}
.nav-cta{display:flex;align-items:center;gap:20px;}
.nav-cta .btn-or{padding:12px 22px;font-size:14px;}
.lang{display:flex;align-items:center;gap:7px;font:500 13px var(--sans);color:var(--encre-2);}
.lang a{color:var(--encre-2);padding:4px 2px;}
.lang a:hover{color:var(--bleu);}
.lang .on{color:var(--marine);}
.lang .sep{color:var(--ligne-forte);}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;}
.burger span{display:block;width:22px;height:1.5px;background:var(--marine);margin:6px 0;transition:transform .2s,opacity .2s;}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}
.nav-mcta{display:none!important;}
body.menu-open{overflow:hidden;}

/* ---------- hero ---------- */
.hero{background:#fff;color:var(--marine);padding:196px 0 112px;position:relative;overflow:hidden;border-bottom:1px solid var(--ligne);}
.hero .wrap{position:relative;z-index:1;}
.kicker{display:block;font:600 14px var(--sans);letter-spacing:.01em;color:var(--bleu);margin-bottom:26px;}
.hero h1{font-size:clamp(40px,5vw,68px);font-weight:400;line-height:1.08;letter-spacing:-.018em;max-width:19ch;color:var(--marine);}
.hero .lead{margin-top:30px;max-width:56ch;font-size:20px;line-height:1.6;color:var(--encre-2);}
.hero .actions{margin-top:44px;display:flex;gap:14px;flex-wrap:wrap;}
.hero-sub{padding:176px 0 88px;background:var(--gris);}
.crumb{font-size:13.5px;color:var(--encre-2);margin-bottom:34px;}
.crumb a{color:var(--bleu);}
.crumb a:hover{text-decoration:underline;text-underline-offset:3px;}
.live-hero{background:var(--marine);color:#fff;}
.live-hero h1,.live-hero .lead{color:#fff;}
.live-hero .lead{color:var(--txt-nuit);}
.live-hero .kicker{color:var(--cyan);}
.live-hero .crumb{color:rgba(255,255,255,.65);}
.live-hero .crumb a{color:#fff;}
.hero-home{background:#fff;padding:190px 0 120px;}
.hero-home h1,.hero-home h1.h1-stack{font-size:clamp(42px,6vw,86px);max-width:none;line-height:1.04;font-weight:400;letter-spacing:-.022em;}
.h1-stack span{display:block;color:var(--marine);}
.hero-home .flow-line{margin-top:56px;}

/* ---------- sections ---------- */
.sec-head{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:72px;align-items:end;margin-bottom:56px;padding-top:28px;border-top:1px solid var(--ligne-forte);}
.sec-head h2{font-size:clamp(32px,3.6vw,48px);max-width:18ch;}
.sec-head p{color:var(--encre-2);max-width:54ch;font-size:17px;}
.gris{background:var(--gris);}
.more-link{display:inline-flex;align-items:center;margin-top:44px;font:500 15.5px var(--sans);color:var(--marine);border-bottom:1px solid #b99a5b;padding-bottom:3px;transition:border-color .15s,color .15s;}
.more-link:hover{color:var(--bleu);}

/* quatre métiers / trois services */
.arms,.arms3,.arms4{display:grid;gap:0;}
.arms{grid-template-columns:1fr 1fr;}
.arms3{grid-template-columns:repeat(3,1fr);}
.arms4{grid-template-columns:repeat(2,1fr);column-gap:48px;}
.svc{display:flex;flex-direction:column;justify-content:space-between;min-height:360px;padding:30px 0 34px;background:transparent;color:var(--marine);border-top:1px solid var(--ligne-forte);transition:border-color .2s;}
.arms4 .svc{border-top:3px solid var(--marine);margin-bottom:48px;}
.svc:hover{border-top-color:var(--bleu);}
.svc-num{display:block;font:600 14px var(--sans);color:var(--bleu);letter-spacing:.02em;}
.svc h3{font-size:clamp(26px,2.4vw,34px);margin:16px 0 16px;transition:color .2s;}
.svc:hover h3{color:var(--bleu);}
.svc p{color:var(--encre-2);font-size:16px;}
.svc-sl{display:block;margin-top:26px;font:italic 400 19px/1.45 var(--serif);color:var(--marine);}
.svc .go{margin-top:24px;display:inline-flex;align-items:center;gap:12px;font:500 14.5px var(--sans);align-self:flex-start;color:var(--bleu);}
.svc .go svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;transition:transform .2s;}
.svc:hover .go svg{transform:translateX(5px);}
.intro-grid .arms3{grid-template-columns:1fr;gap:14px;margin-top:22px;}
.intro-grid .svc{min-height:0;padding:28px 0;}
.intro-grid .svc p{margin-bottom:0;}

/* mission (bloc sombre) */
.mission{background:var(--marine);color:#fff;}
.mission h2,.mission h3{color:#fff;}
.mission .lbl{display:block;font:600 14px var(--sans);color:var(--cyan);margin-bottom:28px;}
.mission blockquote{font:400 clamp(28px,3.3vw,44px)/1.28 var(--serif);max-width:28ch;letter-spacing:-.008em;}
.mission .pour-qui span{background:transparent;color:#fff;border-color:rgba(255,255,255,.4);}

/* engagements / piliers */
.engage{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--marine);}
.engage div{padding:34px 34px 40px 0;border-bottom:1px solid var(--ligne);}
.engage div:not(:nth-child(3n+1)){padding-left:34px;border-left:1px solid var(--ligne);}
.engage h3,.pillars h3{font-size:24px;margin-bottom:12px;}
.engage p,.pillars p{color:var(--encre-2);font-size:15.5px;}
.pillars{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--marine);}
.pillars div{padding:34px 40px 38px 0;border-bottom:1px solid var(--ligne);}
.pillars div:nth-child(even){padding-left:40px;border-left:1px solid var(--ligne);}

.duo{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.duo a{display:block;padding:40px;background:#fff;border:1px solid var(--ligne);border-top:3px solid var(--marine);transition:border-color .2s,box-shadow .2s;}
.duo a:hover{border-top-color:var(--bleu);box-shadow:0 18px 40px rgba(5,28,44,.08);}
.duo h3{font-size:28px;margin-bottom:12px;}
.duo p{color:var(--encre-2);}
.duo .tag{display:none;}

/* métiers (page détaillée) */
.act{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;padding:64px 0;border-top:1px solid var(--ligne);scroll-margin-top:100px;}
.act:first-of-type{border-top:1px solid var(--marine);}
.act .swatch{width:40px;height:3px;margin-bottom:26px;background:var(--bleu)!important;}
.act h3{font-size:38px;}
.act .sl{font:italic 400 21px/1.4 var(--serif);color:var(--encre-2);margin-top:12px;}
.act p{color:var(--encre-2);margin-bottom:16px;}
.act .svc-num{margin-bottom:12px;}
.act .pour-qui{margin-top:22px;}
.act .more-link{margin-top:30px;}

.chain5{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--marine);}
.chain5 div{padding:30px 24px 10px 0;}
.chain5 div + div{padding-left:24px;border-left:1px solid var(--ligne);}
.chain5 .tc,.flow4 .tc{font:600 14px var(--sans);color:var(--bleu);}
.chain5 h3{font-size:23px;margin:10px 0 8px;}
.chain5 p{color:var(--encre-2);font-size:15px;}

.intro-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;}
.intro-grid h2{font-size:clamp(30px,3vw,40px);}
.intro-grid p{color:var(--encre-2);margin-bottom:18px;font-size:18px;line-height:1.7;}
.mission .intro-grid p{color:var(--txt-nuit);}

.split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;}
.split > h2{font-size:clamp(28px,2.8vw,38px);position:sticky;top:120px;align-self:start;}
.services{list-style:none;border-top:1px solid var(--marine);}
.services li{padding:26px 0;border-bottom:1px solid var(--ligne);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;}
.services strong{font:500 21px/1.3 var(--serif);color:var(--marine);}
.services span{color:var(--encre-2);}
.split h3{font-family:var(--serif);}
.pour-qui{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.pour-qui span{border:1px solid var(--ligne-forte);padding:8px 16px;font-size:14.5px;border-radius:0;color:var(--marine);background:#fff;}
.gris .pour-qui span{background:#fff;}

/* flux en 4 temps */
.flow-line{margin-top:38px;font:500 15px var(--sans);letter-spacing:.01em;color:var(--bleu);}
.flow-line span{color:var(--ligne-forte);margin:0 8px;}
.flow4{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--marine);}
.flow4 div{padding:30px 24px 10px 0;}
.flow4 div + div{padding-left:24px;border-left:1px solid var(--ligne);}
.flow4 h3{font-size:25px;margin:10px 0 8px;}
.flow4 p{color:var(--encre-2);font-size:15px;}
.sec-head div p + p{margin-top:12px;}
.body-p{color:var(--encre-2);font-size:18px;line-height:1.7;margin-top:30px;max-width:60ch;}
.sig{font:500 22px/1.4 var(--serif)!important;color:var(--marine)!important;margin-top:8px;}

/* suivre */
.follow{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0;border-top:1px solid var(--marine);}
.follow a{display:flex;align-items:center;gap:16px;padding:24px 22px 24px 0;background:transparent;border-bottom:1px solid var(--ligne);transition:background .2s;}
.follow a:hover strong{color:var(--bleu);}
.follow svg{width:24px;height:24px;fill:var(--marine);flex:none;transition:fill .2s;}
.follow a:hover svg{fill:var(--bleu);}
.follow strong{display:block;font:500 19px/1.3 var(--serif);color:var(--marine);transition:color .2s;}
.follow small{display:block;font-size:13.5px;color:var(--encre-2);}

.group-strip{background:#fff;border-top:1px solid var(--ligne);padding:26px 0;font-size:15px;color:var(--encre-2);}
.group-strip .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;}
.group-strip a{color:var(--marine);font-weight:500;}
.group-strip a:hover{text-decoration:underline;text-underline-offset:3px;}

/* bandeau d'appel à l'action */
.cta{background:var(--marine-2);color:#fff;padding:88px 0;position:relative;border-top:3px solid #b99a5b;}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap;}
.cta h2{font-size:clamp(28px,3.2vw,44px);max-width:24ch;color:#fff;}
.cta .btn-marine{padding:17px 32px;}


/* texte courant */
.prose{max-width:740px;}
.prose h2{font-size:28px;margin:52px 0 14px;}
.prose h2:first-child{margin-top:0;}
.prose p{margin-bottom:16px;color:var(--encre-2);}
.prose a{color:var(--bleu);text-decoration:underline;text-underline-offset:3px;}

/* contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:80px;}
.coord dt{font-size:13.5px;color:var(--encre-2);margin-top:26px;}
.coord dt:first-child{margin-top:0;}
.coord dd{font:400 21px/1.4 var(--serif);color:var(--marine);}
.coord a:hover{color:var(--bleu);}
form.contact{display:grid;gap:20px;}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:var(--marine);}
input,select,textarea{width:100%;font:400 16px var(--sans);padding:14px 16px;border:1px solid var(--ligne-forte);background:#fff;color:var(--encre);border-radius:0;}
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23051c2c' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:10px;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--marine);box-shadow:0 0 0 3px rgba(185,154,91,.3);}
textarea{min-height:160px;resize:vertical;}
.hp{position:absolute;left:-9999px;}
.note{font-size:13.5px;color:var(--encre-2);}
.note a{text-decoration:underline;}
.form-msg{font-size:15px;font-weight:500;}
.form-msg.ok{color:#1d6b3a;}.form-msg.err{color:#a3312b;}
.coord-social{margin-top:28px;}
.coord-social a{border-color:var(--ligne-forte)!important;color:var(--marine)!important;}
.coord-social a:hover{border-color:var(--bleu)!important;color:var(--bleu)!important;}

/* pied de page */
footer{background:var(--marine);color:var(--txt-nuit);padding:84px 0 34px;font-size:14.5px;}
.f-grid{display:grid;grid-template-columns:minmax(0,5fr) repeat(3,minmax(0,2fr));gap:48px;}
footer h4{font:500 18px var(--serif);color:#fff;margin-bottom:16px;}
footer a{display:block;padding:4px 0;transition:color .15s;}
footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.f-brand .brand{display:inline-flex;}
.f-brand .brand-name{color:#fff;}
.f-brand p{max-width:40ch;margin-top:18px;}
.f-brand .groupe{margin-top:16px;display:inline-block;color:#fff;}
.social{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.social a{width:40px;height:40px;border:1px solid var(--ligne-nuit);border-radius:50%;display:grid;place-items:center;padding:0;transition:border-color .15s,color .15s,background .15s;}
.social a:hover{border-color:#fff;color:#fff;text-decoration:none;}
.social svg{width:16px;height:16px;fill:currentColor;}
.f-bottom{margin-top:64px;padding-top:24px;border-top:1px solid var(--ligne-nuit);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13.5px;}
.f-bottom div{display:flex;gap:24px;flex-wrap:wrap;}
.f-bottom a{display:inline;}

/* ---------- accueil : médias ---------- */
.only-m{display:none!important;}
.vids{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.vid{display:flex;flex-direction:column;}
.vid-frame{position:relative;display:block;width:100%;aspect-ratio:16/9;background:var(--marine);border:0;padding:0;cursor:pointer;overflow:hidden;}
.vid-frame img{width:100%;height:100%;object-fit:cover;transition:transform .4s,opacity .3s;}
.vid-frame:hover img{transform:scale(1.03);}
.vid-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.vid-play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:#fff;display:grid;place-items:center;transition:background .2s,transform .2s;}
.vid-play svg{width:24px;height:24px;fill:var(--marine);margin-left:3px;transition:fill .2s;}
.vid-frame:hover .vid-play{background:var(--cyan);transform:scale(1.06);}
.vid-frame:hover .vid-play svg{fill:var(--marine);}
.vid-meta{padding-top:18px;}
.vid-tag{font:600 13px var(--sans);letter-spacing:.01em;color:var(--bleu);}
.vid-meta h3{font-size:22px;line-height:1.3;margin-top:8px;}
.vids .vid-tag{display:block;}
.vid[hidden],.empty[hidden]{display:none;}

.edito{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.tile{display:flex;flex-direction:column;justify-content:space-between;min-height:190px;padding:26px 26px 28px;background:var(--gris);color:var(--marine);border-top:3px solid var(--marine);transition:background .2s,border-color .2s;}
.tile.big{grid-column:span 2;background:var(--marine);color:#fff;min-height:230px;border-top-color:var(--cyan);}
.tile:hover{border-top-color:var(--bleu);background:var(--gris-2);}
.tile.big:hover{background:var(--marine-2);border-top-color:var(--cyan);}
.tile h3{font-size:27px;margin-top:14px;}
.tile.big h3{color:#fff;}
.tile p{color:var(--encre-2);font-size:15px;margin-top:8px;max-width:38ch;}
.tile.big p{color:var(--txt-nuit);}
.tile.big .svc-num{color:var(--cyan);}

.js-rv .rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;}
.js-rv .rv.in{opacity:1;transform:none;}

/* ---------- nos émissions ---------- */
.direct{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:center;background:var(--marine);color:#fff;padding:56px;position:relative;overflow:hidden;}
.direct h2,.direct h3{color:#fff;}
.direct > *{position:relative;}
.direct-vide{grid-template-columns:1fr;}
.direct-vide .dir-info{max-width:62ch;}
.dir-badge{display:inline-flex;align-items:center;gap:10px;font:600 13px var(--sans);letter-spacing:.02em;color:#fff;border:1px solid rgba(255,255,255,.4);padding:7px 14px;border-radius:100px;}
.dir-badge i{width:8px;height:8px;border-radius:50%;background:var(--cyan);}
.is-live .dir-badge{color:#fff;background:#c62828;border-color:#c62828;}
.is-live .dir-badge i,.live-band.is-live .lb-badge i{background:#fff;animation:nmpulse 1.4s infinite;}
@keyframes nmpulse{0%,100%{opacity:1}50%{opacity:.25}}
.dir-prog{display:block;margin-top:26px;font:600 13.5px var(--sans);color:var(--cyan);}
.direct h2{font-size:clamp(28px,2.9vw,40px);line-height:1.15;margin-top:12px;}
.dir-guest{margin-top:18px;font:400 19px/1.45 var(--serif);color:#fff;}
.dir-guest strong{font-weight:600;}
.dir-when{margin-top:8px;font-size:15px;color:var(--txt-nuit);}
.dir-when small{display:block;font-size:13.5px;color:rgba(255,255,255,.6);}
.countdown{display:flex;gap:10px;margin-top:26px;}
.countdown span{flex:1;max-width:84px;text-align:center;padding:12px 4px 10px;border:1px solid var(--ligne-nuit);background:rgba(255,255,255,.04);font-size:12px;color:var(--txt-nuit);letter-spacing:.02em;}
.countdown b{display:block;font:500 30px/1.1 var(--serif);color:#fff;font-variant-numeric:tabular-nums;}
.dir-resume{margin-top:24px;color:var(--txt-nuit);font-size:15.5px;line-height:1.7;}
.direct .actions{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap;}
.dir-media .vid-frame{box-shadow:0 30px 70px rgba(0,0,0,.4);}
.dir-media .vid-play{width:78px;height:78px;margin:-39px 0 0 -39px;}

.agenda{list-style:none;border-top:1px solid var(--marine);}
.agenda li{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:40px;padding:34px 0;border-bottom:1px solid var(--ligne);}
.ag-when strong{display:block;font:500 25px/1.2 var(--serif);color:var(--marine);}
.ag-when span{font-size:14px;color:var(--encre-2);}
.agenda .dir-prog{margin-top:0;color:var(--bleu);}
.agenda h3{font-size:25px;margin-top:8px;}
.agenda .dir-guest{color:var(--encre-2);font-size:17px;margin-top:8px;}
.agenda .more-link{margin-top:16px;}

.progs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.prog{display:flex;flex-direction:column;background:#fff;border:1px solid var(--ligne);}
.prog-head{background:var(--marine);color:#fff;padding:36px 32px 32px;min-height:176px;}
.prog:nth-child(2) .prog-head{background:var(--marine-2);}
.prog:nth-child(3) .prog-head{background:#123f60;}
.prog-head h3{font-size:30px;color:#fff;}
.prog-head h3::after{content:"";display:block;width:40px;height:3px;background:var(--cyan);margin-top:18px;}
.prog-head p{margin-top:16px;font-size:14.5px;color:var(--txt-nuit);}
.prog-tags{display:flex;gap:8px;flex-wrap:wrap;padding:24px 32px 0;}
.prog-tags span{font:600 12.5px var(--sans);letter-spacing:.01em;color:var(--marine);border:1px solid var(--ligne-forte);padding:5px 12px;border-radius:0;}
.prog-body{padding:16px 32px 0;color:var(--encre-2);font-size:15.5px;flex:1;}
.prog .btn{margin:28px 32px 32px;align-self:flex-start;}

.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:40px;border-bottom:1px solid var(--ligne);}
.tabs button{font:500 15px var(--sans);color:var(--encre-2);background:none;border:0;padding:12px 4px;margin-right:22px;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px;}
.tabs button:hover{color:var(--marine);}
.tabs button[aria-pressed="true"]{color:var(--marine);border-bottom-color:var(--bleu);}
.vid-guest{margin-top:8px;font-size:15px;color:var(--encre);}
.vid-themes{margin-top:4px;font-size:13.5px;color:var(--encre-2);}
.empty{color:var(--encre-2);}

.abonne{background:var(--marine);color:#fff;padding:72px 0;}
.abonne h2{color:#fff;font-size:clamp(26px,2.8vw,36px);max-width:22ch;}
.abonne .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;}
.abonne p{color:var(--txt-nuit);margin-top:10px;max-width:52ch;}
.abonne .btn svg{width:18px;height:18px;fill:currentColor;}

/* bandeau « prochain direct » (accueil) */
.live-band{background:var(--gris);color:var(--marine);border-bottom:1px solid var(--ligne);}
.live-band a{display:flex;align-items:center;gap:22px;padding:18px 0;font-size:15px;}
.lb-badge{flex:none;display:inline-flex;align-items:center;gap:9px;font:600 13px var(--sans);letter-spacing:.02em;color:var(--bleu);}
.lb-badge i{width:8px;height:8px;border-radius:50%;background:var(--bleu);}
.live-band.is-live .lb-badge{color:#fff;background:#c62828;padding:5px 12px;border-radius:100px;}
.lb-when{flex:none;color:var(--marine);font-weight:500;}
.lb-when:empty{display:none;}
.lb-title{flex:1;min-width:0;color:var(--encre-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lb-title em{font-style:normal;color:var(--encre-2);opacity:.75;}
.lb-go{flex:none;display:inline-flex;align-items:center;gap:10px;font-weight:500;border-bottom:1px solid var(--ligne-forte);padding-bottom:2px;}
.lb-go svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;transition:transform .2s;}
.live-band a:hover .lb-go svg{transform:translateX(4px);}

/* visuel du webinaire */
.dir-poster{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:28px;background:var(--marine-2);box-shadow:0 30px 70px rgba(0,0,0,.4);}
.dir-poster img{width:96px;height:96px;margin-bottom:6px;}
.dir-poster strong{font:500 clamp(24px,2.4vw,34px)/1.15 var(--serif);color:#fff;}
.dir-poster span{font:600 15px var(--sans);letter-spacing:.02em;color:var(--cyan);}
.dir-poster small{font-size:13px;color:var(--txt-nuit);}

/* actualités */
.news-link{display:block;color:inherit;}.news-link:hover h3{color:var(--bleu);}
.news{border-top:3px solid var(--marine);padding-top:20px;}
.news-img{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:16px;}
.news-date{font-size:13.5px;color:var(--encre-2);margin-top:6px;}
.lang{margin-right:4px;}
#news-list[hidden],#news-latest[hidden]{display:none;}

/* sceau du hero d'accueil */
.hero-seal{position:absolute;right:48px;top:50%;transform:translateY(-46%);width:clamp(240px,26vw,380px);height:auto;border-radius:50%;box-shadow:0 30px 70px rgba(5,28,44,.22);pointer-events:none;}

/* ---------- responsive ---------- */
@media (max-width:1560px) and (min-width:961px){.brand-name small{display:none;}}
@media (max-width:1360px) and (min-width:961px){nav.main > a,.dd-btn{padding:10px 8px;font-size:13.5px;}.nav-cta{gap:14px;}.nav-cta .btn-or{padding:11px 16px;}}
@media (max-width:1180px){.hero-seal{width:clamp(200px,22vw,260px);opacity:.95;}}
@media (max-width:1100px){
  .engage{grid-template-columns:1fr 1fr;}
  .engage div:not(:nth-child(3n+1)){padding-left:0;border-left:0;}
  .engage div:nth-child(even){padding-left:34px;border-left:1px solid var(--ligne);}
  .chain5{grid-template-columns:1fr 1fr 1fr;}
  .chain5 div:nth-child(4){padding-left:0;border-left:0;}
  .arms3{grid-template-columns:1fr;}.svc{min-height:0;}
  .flow4{grid-template-columns:1fr 1fr;}.flow4 div:nth-child(3){padding-left:0;border-left:0;}
  .direct{grid-template-columns:1fr;gap:40px;}.dir-media{order:-1;}.progs{grid-template-columns:1fr;}.prog-head{min-height:0;}
}
@media (max-width:1180px) and (min-width:961px){.nav-cta .btn{display:none;}}
@media (max-width:960px){
  .wrap{padding:0 24px;}
  header.site{height:72px;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;}
  .burger{display:block;}
  .nav-cta .btn{display:none;}
  nav.main{position:fixed;top:calc(72px + env(safe-area-inset-top,0px));left:0;right:0;height:calc(100dvh - 72px - env(safe-area-inset-top,0px));background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 40px;overflow-y:auto;display:none;}
  nav.main.open{display:flex;}
  nav.main > a,.dd-btn{font:400 24px var(--serif);padding:16px 0;border-bottom:1px solid var(--ligne);width:100%;justify-content:space-between;color:var(--marine);}
  nav.main a[aria-current]{color:var(--bleu);}
  nav.main a[aria-current]::after{display:none;}
  .dd-menu{position:static;min-width:0;border:0;box-shadow:none;background:none;padding:6px 0 12px 14px;display:none;}
  .dd-menu::before{display:none;}
  .dd.open .dd-menu{display:block;}
  .dd-menu a{font-size:16px;padding:10px 0;}
  .dd-menu a:hover{background:none;}
  nav.main > a.nav-mcta{display:flex!important;justify-content:center;margin-top:28px;border:0;background:var(--marine);color:#fff;font:500 15px var(--sans);padding:16px;}
  .only-m{display:flex!important;}
  .hero{padding:136px 0 72px;}
  .hero-home{padding:132px 0 80px;}
  .hero-sub{padding:128px 0 64px;}
  .hero-seal{display:none;}
  .sec-head,.split,.contact-grid,.intro-grid,.act{grid-template-columns:1fr;gap:22px;}
  .split > h2{position:static;}
  .arms,.duo,.pillars{grid-template-columns:1fr;}
  .arms4{grid-template-columns:1fr;}.arms4 .svc{min-height:0;margin-bottom:28px;}
  .pillars div:nth-child(even){padding-left:0;border-left:0;}
  .services li{grid-template-columns:1fr;gap:4px;}
  .f-grid{grid-template-columns:1fr 1fr;}
  .f-brand{grid-column:1/-1;}
  section{padding:72px 0;}
  .vids{grid-template-columns:1fr;gap:36px;}
  .edito{grid-template-columns:1fr 1fr;}.tile.big{grid-column:1/-1;}
  .chain5{grid-template-columns:1fr 1fr!important;}
  .agenda li{grid-template-columns:1fr;gap:10px;}
  .live-band a{flex-wrap:wrap;gap:6px 16px;}.lb-title{flex-basis:100%;white-space:normal;}
}
@media (max-width:600px){
  body{font-size:16px;}
  .hero .lead{font-size:18px;}
  .engage,.chain5{grid-template-columns:1fr;}
  .engage div,.engage div:nth-child(even),.chain5 div,.chain5 div + div{padding-left:0;border-left:0;}
  .chain5{grid-template-columns:1fr!important;}
  .chain5 div{border-bottom:1px solid var(--ligne);}
  .flow4{grid-template-columns:1fr;}
  .flow4 div,.flow4 div + div{padding-left:0;border-left:0;border-bottom:1px solid var(--ligne);}
  .row2{grid-template-columns:1fr;}
  .brand-name small{display:none;}
  .brand-name{font-size:19px;}
  .lang{font-size:12.5px;}
  .cta{padding:64px 0;}
  .edito{grid-template-columns:1fr;}
  .direct{padding:30px 22px 34px;}.countdown{gap:6px;}.countdown b{font-size:24px;}.direct .actions .btn{width:100%;}
  .prog-head,.prog-tags,.prog-body{padding-left:24px;padding-right:24px;}.prog .btn{margin:24px;}
  .abonne .btn{width:100%;}
  .dir-poster img{width:64px;height:64px;}
  .svc{padding:26px 0 28px;}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{transition:none!important;}.is-live .dir-badge i,.live-band.is-live .lb-badge i{animation:none;}.js-rv .rv{opacity:1;transform:none;}}

/* intro d'accueil : titre explicite */
.hero-home h1.h1-clear{font-size:clamp(36px,4.8vw,66px);max-width:17ch;line-height:1.06;font-weight:400;letter-spacing:-.02em;color:var(--marine);}
.hero-home .lead{max-width:60ch;}
.hero-for{margin-top:28px;}
@media (max-width:1180px){.hero-home h1.h1-clear{max-width:20ch;}}

/* bloc d'appel à la plaquette (accueil) */
.plaq{background:var(--gris);color:var(--marine);padding:96px 0;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);}
.plaq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:center;}
.plaq .lbl{display:block;font:600 14px var(--sans);color:var(--bleu);margin-bottom:24px;}
.plaq h2{color:var(--marine);font-size:clamp(30px,3.4vw,46px);max-width:16ch;}
.plaq p{color:var(--encre-2);margin-top:22px;max-width:52ch;}
.plaq .actions{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap;}
.plaq .btn-or{background:var(--marine);color:#fff;}
.plaq .btn-or:hover{background:var(--marine-2);}
.plaq .plaq-note{margin-top:18px;font-size:14px;color:var(--encre-2);}
.plaq-img{display:block;}
.plaq-img img{width:100%;height:auto;border:1px solid var(--ligne);box-shadow:0 24px 54px rgba(5,28,44,.18);transition:transform .25s;}
.plaq-img:hover img{transform:translateY(-4px);}
.hero .actions .btn svg{flex:none;}
@media (max-width:900px){.plaq{padding:64px 0;}.plaq-grid{grid-template-columns:1fr;gap:36px;}.plaq .actions .btn{width:100%;}}

/* ===== Accueil ICC : hero clair, globe, pôles ===== */
.hero-icc{background:linear-gradient(180deg,#f4f6f8 0%,#fff 100%);color:var(--marine);padding:150px 0 0;border-bottom:1px solid var(--ligne);overflow:hidden;position:relative}
.hero-icc::before{content:"";position:absolute;right:-6%;top:6%;width:62%;height:90%;background:radial-gradient(closest-side,rgba(185,154,91,.13),transparent 72%);pointer-events:none}
.hero-icc .wrap{position:relative}
.hero-icc .kicker{color:var(--bleu)}
.hero-icc h1{color:var(--marine);font-size:clamp(38px,4.8vw,68px);max-width:15ch;line-height:1.06}
.hero-icc .lead{color:var(--encre-2);max-width:50ch}
.hero-icc .btn-or{background:var(--marine);color:#fff}
.hero-icc .btn-or:hover{background:var(--marine-2)}
.hero-icc .btn-line{border-color:var(--marine);color:var(--marine)}
.hero-icc .btn-line:hover{background:var(--marine);color:#fff}
.hero-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:48px;align-items:center}
.globe-box{position:relative}
.globe-box canvas{display:block;width:100%;aspect-ratio:1;cursor:grab;touch-action:pan-y}
.globe-box canvas:active{cursor:grabbing}
.globe-cap{text-align:center;font:400 13px var(--sans);color:var(--encre-2);margin-top:4px}
.hero-icc .tag{margin-top:40px;font:italic 400 22px var(--serif);color:var(--bleu)}
.icc-band{margin-top:72px;border-top:1px solid var(--ligne);padding:22px 0 26px}
.icc-band ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 34px;font:500 15px var(--sans);color:var(--encre-2)}
.icc-band li+li{position:relative}
.icc-band li+li:before{content:"";position:absolute;left:-18px;top:50%;width:4px;height:4px;border-radius:50%;background:var(--or)}
.icc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.icc-steps>div{border-top:3px solid var(--marine);padding-top:26px}
.icc-steps h3{font-size:clamp(28px,2.8vw,40px);margin-bottom:14px}
.icc-steps p{color:var(--encre-2);font-size:17px;max-width:38ch}
@media(max-width:960px){.hero-icc{padding-top:120px}.hero-grid{grid-template-columns:1fr;gap:24px}.globe-box{max-width:460px;margin:0 auto;width:100%}.icc-steps{grid-template-columns:1fr;gap:36px}.icc-band{margin-top:40px}}

.hero-icc h1{max-width:17ch}
.org{display:grid;gap:0;justify-items:stretch}
.org-top,.org-mid{border:1px solid var(--ligne-forte);padding:22px 28px;display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;background:#fff}
.org-top b,.org-mid b{font:400 clamp(24px,2.4vw,32px) var(--serif);color:var(--marine)}
.org-top span,.org-mid span{font:500 14.5px var(--sans);color:var(--bleu)}
.org-mid{background:var(--marine);border-color:var(--marine);margin-top:28px;position:relative}
.org-mid b{color:#fff}.org-mid span{color:var(--cyan)}
.org-mid:before{content:"";position:absolute;left:50%;top:-28px;height:28px;border-left:1px solid var(--ligne-forte)}
.org-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:28px;position:relative}
.org-grid:before{content:"";position:absolute;left:12.5%;right:12.5%;top:-14px;border-top:1px solid var(--ligne-forte)}
.org-grid:after{content:"";position:absolute;left:50%;top:-28px;height:14px;border-left:1px solid var(--ligne-forte)}
.org-grid a{border:1px solid var(--ligne-forte);border-top:3px solid var(--or);padding:22px 20px;background:#fff;display:flex;flex-direction:column;gap:10px;transition:border-color .2s}
.org-grid a:hover{border-top-color:var(--marine)}
.org-grid b{font:400 22px/1.2 var(--serif);color:var(--marine)}
.org-grid span{font:400 14.5px/1.5 var(--sans);color:var(--encre-2)}
@media(max-width:960px){.org-grid{grid-template-columns:1fr 1fr}.org-grid:before,.org-grid:after,.org-mid:before{display:none}}
@media(max-width:560px){.org-grid{grid-template-columns:1fr}}

/* ---- pages de pôle ---- */
.subnav{border-bottom:1px solid var(--ligne);background:#fff;position:relative;z-index:2}
.subnav .wrap{display:flex;gap:34px;overflow-x:auto;scrollbar-width:none}
.subnav .wrap::-webkit-scrollbar{display:none}
.subnav a{padding:18px 0 16px;font-size:14.5px;color:var(--marine);white-space:nowrap;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}
.subnav a:hover,.subnav a:focus-visible{border-color:var(--bleu);color:var(--bleu)}
.hero-sub .actions{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap}
.hero-sub h1{max-width:22ch}
.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}
.steps4>div{border-top:3px solid var(--marine);padding-top:22px}
.steps4 b{display:block;font:600 14px var(--sans);color:var(--bleu);margin-bottom:10px;letter-spacing:.02em}
.steps4 h3{font-size:26px;margin-bottom:10px}
.steps4 p{color:var(--encre-2);font-size:16px}
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.offer{border:1px solid var(--ligne);border-top:3px solid var(--marine);padding:32px 30px;background:#fff}
.offer h3{font-size:26px;margin-bottom:8px}
.offer .o-sub{font:italic 400 18px/1.4 var(--serif);color:var(--encre-2);margin-bottom:18px}
.offer ul{list-style:none}
.offer li{padding:10px 0 10px 22px;border-top:1px solid var(--ligne);position:relative;font-size:15.5px;color:var(--encre-2)}
.offer li::before{content:"";position:absolute;left:0;top:19px;width:10px;height:2px;background:var(--or)}
.cover{background:#fff;border-top:3px solid var(--or);border-bottom:1px solid var(--ligne)}
.cov{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--marine);margin-bottom:44px}
.cov>div{padding:28px 32px 30px 0;border-bottom:1px solid var(--ligne)}
.cov h3{font-size:26px;margin-bottom:10px}
.cov p{color:var(--encre-2);font-size:16px}
.cov-lbl{font:600 14px var(--sans);color:var(--bleu);margin-bottom:14px}
.cov-note{margin-top:22px;color:var(--encre-2);font-size:15px}
.faq{border-top:1px solid var(--marine);max-width:900px}
.faq details{border-bottom:1px solid var(--ligne-forte);padding:22px 0}
.faq summary{cursor:pointer;font:500 21px/1.35 var(--serif);color:var(--marine);list-style:none;display:flex;justify-content:space-between;gap:24px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 26px/1 var(--sans);color:var(--bleu);flex:none}
.faq details[open] summary::after{content:"\2013"}
.faq details p{margin-top:12px;color:var(--encre-2);max-width:70ch}
.others{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.others a{display:block;border-top:1px solid var(--ligne-forte);padding:24px 0;transition:border-color .2s}
.others a:hover{border-color:var(--marine)}
.others h3{font-size:26px;margin:8px 0 10px}
.others p{color:var(--encre-2);font-size:16px;margin-bottom:14px}
.others .go{font-size:14.5px;color:var(--bleu);font-weight:500}
.callout{background:var(--gris);border-top:3px solid var(--or);border-bottom:1px solid var(--ligne);padding:56px 0}
.callout .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap}
.callout .kicker{margin-bottom:14px}
.callout h2{font-size:clamp(28px,3.2vw,42px);max-width:26ch}
.callout p{color:var(--encre-2);max-width:62ch;margin-top:14px;font-size:17px}
.callout .actions{display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:1100px){.steps4{grid-template-columns:repeat(2,1fr)}.cov{grid-template-columns:repeat(2,1fr)}.offers{grid-template-columns:1fr}}
@media(max-width:960px){.others{grid-template-columns:1fr;gap:8px}.subnav .wrap{gap:24px}}
@media(max-width:600px){.steps4,.cov{grid-template-columns:1fr}.callout{padding:44px 0}.callout .actions .btn,.hero-sub .actions .btn{width:100%}.faq summary{font-size:19px}}

/* ---- photos ---- */
.hero-photo{margin:0;position:relative}
.hero-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--ligne);box-shadow:0 22px 50px rgba(5,28,44,.18)}
.photo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}
.photo-row figure{margin:0}
.photo-row img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--ligne)}
.photo-row figure:nth-child(3) img{object-position:25% 50%}
.photo-row figcaption{font-size:14px;color:var(--encre-2);margin-top:10px}
@media(max-width:960px){.hero-photo{max-width:640px;margin:0 auto;width:100%}}
@media(max-width:700px){.photo-row{grid-template-columns:1fr;gap:20px}.photo-row img{aspect-ratio:3/2}.photo-row figure:first-child img{object-position:50% 25%}.photo-row figure:nth-child(2) img{object-position:50% 20%}}

/* ---- mosaique de photos ---- */
.mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(240px,26vw,360px);gap:16px}
.mosaic figure{margin:0;position:relative;overflow:hidden;background:var(--gris)}
.mosaic img{width:100%;height:100%;object-fit:cover;display:block}
.mosaic .w7{grid-column:span 7}
.mosaic .w5{grid-column:span 5}
.mosaic figcaption{position:absolute;left:0;right:0;bottom:0;padding:38px 18px 14px;font-size:13.5px;color:#fff;background:linear-gradient(to top,rgba(5,28,44,.78),rgba(5,28,44,0))}
@media(max-width:700px){.mosaic{grid-template-columns:1fr;grid-auto-rows:min(72vw,300px);gap:12px}.mosaic .w7,.mosaic .w5{grid-column:auto}}

/* ---------- bandeau de preuve (accueil) ---------- */
.proof{padding:40px 0;border-bottom:1px solid var(--ligne);background:#fff}
.proof .wrap{display:flex;align-items:baseline;justify-content:center;gap:10px 18px;flex-wrap:wrap;text-align:center}
.proof-big{font:400 clamp(26px,3.2vw,40px)/1.2 var(--serif);color:var(--marine);letter-spacing:-.01em}
.proof-sub{font:500 16px var(--sans);color:var(--bleu)}
.vids.vids-2{grid-template-columns:repeat(2,1fr);gap:44px 32px}
.vids-2 .vid-meta h3{font-size:24px}
@media(max-width:960px){.vids.vids-2{grid-template-columns:1fr}}

/* ---------- newsletter (pied de page) ---------- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.f-news{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px;align-items:center;padding-bottom:56px;margin-bottom:56px;border-bottom:1px solid var(--ligne-nuit)}
footer .f-news h4{font:400 clamp(26px,2.8vw,34px)/1.2 var(--serif);margin-bottom:12px}
.f-news p{max-width:48ch;margin:0}
.f-news p a{display:inline;color:#fff;text-decoration:underline;text-underline-offset:3px;padding:0}
.newsletter{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:stretch}
.newsletter input[type=email]{height:56px;padding:0 20px;background:transparent;border:1px solid rgba(255,255,255,.6);border-radius:0;color:#fff;font:400 16px var(--sans);min-width:0}
.newsletter input[type=email]::placeholder{color:rgba(255,255,255,.62)}
.newsletter input[type=email]:focus-visible{outline:2px solid #fff;outline-offset:2px;border-color:#fff}
.newsletter .btn{height:56px;background:#fff;color:var(--marine);padding:0 30px;font-weight:600}
.newsletter .btn:hover{background:var(--gris-2)}
.newsletter .btn[disabled]{opacity:.6;cursor:wait}
.newsletter .form-msg{grid-column:1/-1;margin:0;color:#fff}
.newsletter .form-msg:empty{display:none}
.newsletter .form-msg.ok{color:#c4ebd0}
.newsletter .form-msg.err{color:#ffc2bd}
@media(max-width:960px){.f-news{grid-template-columns:1fr;gap:28px;padding-bottom:44px;margin-bottom:44px}}
@media(max-width:600px){.newsletter{grid-template-columns:1fr}.newsletter .btn{width:100%}}

/* ============================================================
   v25 : refonte graphique (police Plus Jakarta Sans, titres
   massifs, cartes photo, accueil plein écran, boutons arrondis)
   Palette Navalior conservée : marine et or.
   ============================================================ */
:root{
  --serif:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --sans:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --marque:#b99a5b;
  --pill:999px;
}
body{font-size:17px;line-height:1.65;letter-spacing:-.003em;}
h1,h2,h3{font-weight:700;line-height:1.05;letter-spacing:-.035em;color:var(--marine);}
h3{letter-spacing:-.022em;line-height:1.15;}
h1 .dot,h2 .dot,h3 .dot{color:var(--marque);margin-left:-.05em;}
.mission .dot,.cta .dot,.direct .dot,.hero-icc .dot,.live-hero .dot,.abonne .dot,.svc-card .dot,.arms4 .dot,footer .dot{color:var(--cyan);}

/* ---------- boutons ---------- */
.btn{border-radius:var(--pill);font:600 15px var(--sans);padding:16px 30px;letter-spacing:-.005em;}
.btn-or,.btn-marine{background:var(--marine);color:#fff;}
.btn-or:hover,.btn-marine:hover{background:var(--marque);color:var(--marine);}
.btn-line{border:1.5px solid var(--marine);color:var(--marine);}
.btn-line:hover{background:var(--marine);color:#fff;}
.mission .btn-or:hover,.direct .btn-or:hover,.abonne .btn-or:hover,.cta .btn-or:hover,.cta .btn-marine:hover{background:var(--marque);color:var(--marine);}
.plaq .btn-or:hover,.hero-icc .btn-or:hover{background:var(--marque);color:var(--marine);}

/* ---------- en-tête ---------- */
header.site{height:80px;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:0;box-shadow:0 1px 0 rgba(5,28,44,.06),0 8px 24px rgba(5,28,44,.05);}
.brand-name{font:700 20px/1.1 var(--sans);letter-spacing:-.03em;}
.brand-name small{font:500 12px var(--sans);letter-spacing:0;color:var(--encre-2);}
nav.main > a,.dd-btn{font:600 14.5px var(--sans);letter-spacing:-.005em;padding:10px 12px;}
nav.main a[aria-current]::after{left:12px;right:12px;bottom:0;height:3px;border-radius:3px;background:var(--marque);}
.dd-menu{border:0;border-top:0;border-radius:14px;padding:10px;min-width:290px;box-shadow:0 24px 60px rgba(5,28,44,.18);}
.dd-menu a{border-radius:10px;padding:12px 16px;font-weight:500;}
.nav-cta .btn-or{padding:12px 24px;font-size:14px;}
.lang{font-weight:600;}

/* ---------- repères typographiques ---------- */
.kicker{font:700 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--bleu);margin-bottom:24px;}
.kicker::before{content:"/";display:inline-block;margin-right:10px;color:var(--marque);font-weight:800;pointer-events:none;}
.crumb{font-weight:500;}
.svc-num,.chain5 .tc,.flow4 .tc,.steps4 b,.cov-lbl,.vid-tag,.mission .lbl,.plaq .lbl{font-weight:700;letter-spacing:.02em;}
.svc-sl,.act .sl,.offer .o-sub,.hero-icc .tag,.hero .tag{font-style:normal;font-family:var(--sans);font-weight:600;letter-spacing:-.01em;}

/* ---------- pages intérieures : grand titre sur fond blanc ---------- */
.hero-sub{background:#fff;padding:168px 0 72px;border-bottom:0;}
.hero-sub h1{font-size:clamp(36px,4.7vw,70px);font-weight:800;letter-spacing:-.045em;line-height:1.04;max-width:21ch;}
.hero-sub .lead{margin-top:32px;font-size:clamp(18px,1.5vw,22px);line-height:1.55;max-width:58ch;}
.live-hero{background:var(--marine);}
.live-hero h1,.live-hero .lead{color:#fff;}
.live-hero .lead{color:var(--txt-nuit);}
.subnav{border-bottom:1px solid var(--ligne);}
.subnav a{font-weight:600;}

/* ---------- titres de section : barre oblique or ---------- */
.sec-head{border-top:0;padding-top:0;margin-bottom:56px;align-items:end;}
.sec-head h2{font-size:clamp(32px,4.2vw,60px);font-weight:800;letter-spacing:-.045em;line-height:1.02;max-width:16ch;}
.sec-head h2::before{content:"/";color:var(--marque);margin-right:.22em;pointer-events:none;}
.sec-head p{font-size:18px;}
.more-link{font-family:var(--sans);font-weight:700;border-bottom:0;padding:13px 26px;border:1.5px solid var(--marine);border-radius:var(--pill);margin-top:48px;transition:background .2s,color .2s;}
.more-link:hover{background:var(--marine);color:#fff;}

/* ---------- accueil : hero plein écran ---------- */
.hero-icc{background:var(--marine);color:#fff;padding:0;min-height:min(100vh,880px);display:flex;align-items:flex-end;border-bottom:0;}
.hero-icc::before{content:none;}
.hero-icc .wrap{position:static;z-index:auto;width:100%;padding-top:150px;padding-bottom:76px;}
.hero-icc .hero-grid{display:block;}
.hero-icc .hero-grid > div{position:relative;z-index:2;max-width:880px;}
.hero-icc .hero-photo{position:absolute;inset:0;margin:0;max-width:none;z-index:0;}
.hero-icc .hero-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 28%;border:0;box-shadow:none;}
.hero-icc .hero-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(5,28,44,.97) 0%,rgba(5,28,44,.86) 34%,rgba(5,28,44,.35) 68%,rgba(5,28,44,.5) 100%);}
.hero-icc .kicker{color:var(--cyan);}
.hero-icc h1{color:#fff;font-size:clamp(38px,5.1vw,78px);font-weight:800;letter-spacing:-.045em;line-height:1.02;max-width:17ch;}
.hero-icc .lead{color:rgba(255,255,255,.88);max-width:54ch;font-size:clamp(17px,1.4vw,21px);}
.hero-icc .btn-or{background:#fff;color:var(--marine);}
.hero-icc .btn-line{border-color:rgba(255,255,255,.7);color:#fff;}
.hero-icc .btn-line:hover{background:#fff;color:var(--marine);}
.hero-icc .tag{color:var(--cyan);margin-top:36px;font-size:18px;}

/* ---------- bandeau de preuve ---------- */
.proof{padding:56px 0;}
.proof-big{font:800 clamp(30px,4vw,56px)/1.1 var(--sans);letter-spacing:-.04em;}
.proof-sub{font-weight:600;}

/* ---------- cartes des quatre pôles (accueil) ---------- */
.arms4{grid-template-columns:repeat(2,1fr);column-gap:20px;row-gap:20px;}
.arms4 .svc{position:relative;isolation:isolate;overflow:hidden;min-height:480px;padding:40px 40px 36px;margin:0;border:0;border-top:0;color:#fff;background:var(--marine);justify-content:flex-end;gap:0;}
.arms4 .svc::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--card-img,none) center/cover no-repeat;transform:scale(1.001);transition:transform .7s ease;pointer-events:none;}
.arms4 .svc::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(5,28,44,.96) 0%,rgba(5,28,44,.82) 42%,rgba(5,28,44,.42) 100%);pointer-events:none;}
.arms4 .svc:hover::before{transform:scale(1.06);}
.arms4 .svc:nth-child(1){--card-img:url(/assets/photos/studio-plateau.webp);}
.arms4 .svc:nth-child(2){--card-img:url(/assets/photos/studio-invitee.webp);}
.arms4 .svc:nth-child(3){--card-img:url(/assets/photos/studio-groupe-2.webp);}
.arms4 .svc:nth-child(4){--card-img:url(/assets/photos/studio-echange.webp);}
.arms4 .svc h3{color:#fff;font-size:clamp(30px,3.2vw,46px);font-weight:800;letter-spacing:-.04em;line-height:1.04;margin:0 0 16px;}
.arms4 .svc:hover h3{color:#fff;}
.arms4 .svc p{color:rgba(255,255,255,.86);font-size:16.5px;max-width:48ch;}
.arms4 .svc-sl{color:var(--cyan);font-size:17px;margin-top:22px;}
.arms4 .svc .go{margin-top:26px;color:#fff;font-weight:700;padding:11px 20px;border:1.5px solid rgba(255,255,255,.65);border-radius:var(--pill);transition:background .2s,color .2s,border-color .2s;}
.arms4 .svc:hover .go{background:#fff;color:var(--marine);border-color:#fff;}
.arms4 .svc .go svg{stroke:currentColor;}

/* ---------- autres cartes et blocs ---------- */
.svc h3,.tile h3,.duo h3,.offer h3,.others h3,.cov h3,.steps4 h3,.chain5 h3,.flow4 h3,.engage h3,.pillars h3,.icc-steps h3{font-weight:700;}
.icc-steps h3{font-weight:800;letter-spacing:-.04em;}
.duo a{border:0;border-radius:0;background:var(--gris);padding:44px;}
.duo a:hover{background:var(--marine);box-shadow:none;}
.duo a:hover h3,.duo a:hover p{color:#fff;}
.tile{border-top:0;background:var(--gris);min-height:220px;}
.tile.big{background:var(--marine);}
.offer{border:0;border-top:0;background:var(--gris);}
.offer li{border-top-color:rgba(5,28,44,.1);}
.prog{border:0;}
.prog-head{padding:40px 34px 34px;}
.prog-head h3{font-weight:800;letter-spacing:-.04em;}
.prog-tags span,.pour-qui span{border-radius:var(--pill);}
.pour-qui span{padding:9px 18px;font-weight:500;}
.org-grid a{border-radius:0;}
.callout{background:var(--gris);border-top:0;border-bottom:0;padding:84px 0;}
.callout h2{font-size:clamp(30px,3.8vw,56px);font-weight:800;letter-spacing:-.042em;max-width:20ch;}
.callout .kicker{margin-bottom:18px;}
.cta{background:var(--marine);border-top:0;padding:112px 0;}
.cta h2{font-size:clamp(32px,4.6vw,68px);font-weight:800;letter-spacing:-.045em;line-height:1.02;max-width:17ch;}
.cta .btn-marine,.cta .btn-or{padding:18px 36px;}
.mission blockquote{font:700 clamp(28px,3.6vw,52px)/1.14 var(--sans);letter-spacing:-.035em;}
.act h3{font-weight:800;letter-spacing:-.04em;}
.services strong,.follow strong,.ag-when strong{font-weight:700;letter-spacing:-.02em;}
.coord dd{font:600 21px/1.4 var(--sans);letter-spacing:-.015em;}
.faq summary{font-weight:700;letter-spacing:-.02em;}
.intro-grid h2,.split > h2{font-weight:800;letter-spacing:-.04em;}

/* ---------- vidéos ---------- */
.vid-frame{border-radius:0;}
.vid-play{background:#fff;width:68px;height:68px;margin:-34px 0 0 -34px;}
.vid-frame:hover .vid-play{background:var(--marque);}
.vid-meta h3{font-weight:700;letter-spacing:-.025em;}
.news{border-top:0;padding-top:0;}

/* ---------- formulaires ---------- */
input,select,textarea{border-radius:12px;border-color:var(--ligne-forte);}
input:focus,select:focus,textarea:focus{border-color:var(--marine);box-shadow:0 0 0 3px rgba(185,154,91,.35);}
.newsletter input[type=email]{border-radius:var(--pill);padding:0 26px;}
.newsletter .btn{border-radius:var(--pill);}
.tabs button{font-weight:600;}

/* ---------- pied de page ---------- */
footer{padding:96px 0 36px;}
footer h4{font:700 16px var(--sans);letter-spacing:-.01em;}
footer .f-news h4{font:800 clamp(28px,3.4vw,46px)/1.05 var(--sans);letter-spacing:-.04em;}
.social a{border-width:1.5px;}

/* ---------- mosaïque ---------- */
.mosaic figcaption{font-weight:600;}

/* ---------- mobile ---------- */
@media (max-width:960px){
  header.site{height:72px;}
  .brand-name{font-size:18px;}
  nav.main > a,.dd-btn{font:700 26px var(--sans);letter-spacing:-.035em;padding:16px 0;}
  .dd-menu{border-radius:0;box-shadow:none;padding:6px 0 12px 14px;min-width:0;}
  .dd-menu a{font-size:17px;font-weight:500;padding:10px 0;}
  nav.main > a.nav-mcta{border-radius:var(--pill);font:600 15px var(--sans);}
  .hero-sub{padding:116px 0 48px;}
  .sec-head{margin-bottom:36px;}
  .hero-icc{display:block;min-height:0;padding-top:72px;background:var(--marine);}
  .hero-icc .wrap{padding-top:0;padding-bottom:0;}
  .hero-icc .hero-grid{display:flex;flex-direction:column-reverse;}
  .hero-icc .hero-photo{position:relative;inset:auto;margin:0 -24px;width:auto;max-width:none;aspect-ratio:4/3;}
  .hero-icc .hero-photo img{aspect-ratio:auto;object-position:50% 25%;}
  .hero-icc .hero-photo::after{background:linear-gradient(to top,rgba(5,28,44,1) 0%,rgba(5,28,44,.2) 45%,rgba(5,28,44,0) 100%);}
  .hero-icc .hero-grid > div{padding:8px 0 64px;max-width:none;}
  .hero-icc h1{font-size:clamp(36px,10.4vw,56px);max-width:none;}
  .arms4{grid-template-columns:1fr;row-gap:16px;}
  .arms4 .svc{min-height:440px;padding:30px 26px 28px;margin-bottom:0;}
  .callout{padding:60px 0;}
  .cta{padding:72px 0;}
  .proof{padding:40px 0;}
}
@media (max-width:600px){
  body{font-size:16.5px;}
  .btn{padding:16px 26px;}
  .hero-icc .actions .btn{width:100%;}
  .more-link{margin-top:32px;}
}

/* ---------- mot du fondateur ---------- */
.founder{background:var(--gris);}
.founder-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:96px;align-items:center;}
.founder-photo{position:relative;margin:0;max-width:480px;isolation:isolate;}
.founder-photo::before{content:"";position:absolute;z-index:-1;inset:28px -28px -28px 28px;background:var(--marine);}
.founder-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;background:var(--gris-2);}
.founder-text .kicker{margin-bottom:22px;}
.founder-text h2{font-size:clamp(28px,3.4vw,46px);font-weight:800;letter-spacing:-.04em;line-height:1.08;max-width:20ch;margin-bottom:34px;}
.founder-text p{color:var(--encre-2);font-size:18px;line-height:1.75;max-width:58ch;margin-bottom:18px;}
.founder-sign{margin-top:36px;padding-top:24px;border-top:1px solid var(--ligne-forte);max-width:58ch;}
.founder-sign strong{display:block;font:800 20px/1.3 var(--sans);letter-spacing:-.025em;color:var(--marine);}
.founder-sign span{display:block;font:500 15px/1.5 var(--sans);color:var(--bleu);margin-top:2px;}
@media (max-width:960px){
  .founder-grid{grid-template-columns:1fr;gap:56px;}
  .founder-photo{max-width:420px;margin:0 28px 0 0;}
  .founder-text h2{max-width:none;margin-bottom:26px;}
  .founder-text p{font-size:17px;}
}

/* Aiguillage par besoin */
.aig{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--marine)}
.aig a{display:flex;flex-direction:column;gap:6px;padding:26px 24px 28px 0;border-bottom:1px solid var(--ligne);text-decoration:none;color:inherit}
.aig a+a{padding-left:24px;border-left:1px solid var(--ligne)}
.aig b{font-size:18px;line-height:1.3}.aig span{color:var(--encre-2);font-size:15px}
.aig a:hover b,.aig a:focus-visible b{text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.aig{grid-template-columns:1fr 1fr}.aig a,.aig a+a{padding:22px 16px 24px 0;border-left:0}}
@media(max-width:560px){.aig{grid-template-columns:1fr}}

/* ===== Événementiel : blocs d'expertise (inspiration Webedia Event) ===== */
.ev-band{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:44px;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);}
.ev-band div{padding:24px 22px;border-left:1px solid var(--ligne);}
.ev-band div:first-child{border-left:0;padding-left:0;}
.ev-band b{display:block;font-weight:800;letter-spacing:-.02em;color:var(--marine);font-size:17px;margin-bottom:6px;}
.ev-band span{font-size:14.5px;color:var(--encre-2);line-height:1.55;}
.ev-block{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center;padding:56px 0;border-top:1px solid var(--ligne);}
.ev-block:first-of-type{border-top:0;}
.ev-block.rev{grid-template-columns:minmax(0,6fr) minmax(0,5fr);}
.ev-block.rev .ev-fig{order:2;}
.ev-fig{margin:0;position:relative;}
.ev-fig img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:0;}
.ev-fig::after{content:"";position:absolute;right:-14px;bottom:-14px;width:46%;height:46%;border-right:3px solid var(--cyan);border-bottom:3px solid var(--cyan);pointer-events:none;}
.ev-txt .svc-num{display:block;margin-bottom:10px;}
.ev-txt h3{font-size:clamp(26px,2.6vw,36px);font-weight:800;letter-spacing:-.04em;text-transform:none;margin:0 0 18px;color:var(--marine);}
.ev-txt p{margin:0 0 14px;line-height:1.7;}
.ev-txt .pour-qui{margin:20px 0 26px;}
@media(max-width:860px){.ev-band{grid-template-columns:1fr 1fr;}.ev-band div:nth-child(3){border-left:0;padding-left:0;}.ev-band div{border-top:1px solid var(--ligne);}.ev-band div:nth-child(-n+2){border-top:0;}.ev-block,.ev-block.rev{grid-template-columns:1fr;gap:28px;padding:40px 0;}.ev-block.rev .ev-fig{order:0;}.ev-fig::after{right:-8px;bottom:-8px;}}

.ev-block.nofig{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px;align-items:start;}
.ev-block.nofig .ev-head h3{margin:0;}
@media(max-width:860px){.ev-block.nofig{grid-template-columns:1fr;gap:18px;}}
