.cb-reportages-page{
  margin:0;
  background:#f6efe5;
  color:#211c17;
}

.cb-reportages-page *,
.cb-reportages-page *::before,
.cb-reportages-page *::after{
  box-sizing:border-box;
}

.cb-reports-kicker{
  margin:0 0 16px;
  color:#b48f53;
  font-size:11px;
  line-height:1;
  font-weight:850;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.cb-featured-cinema-actions a,
.cb-report-contact a{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 20px;
  border-radius:999px;
  border:1px solid rgba(33,28,23,.16);
  color:#211c17;
  text-decoration:none;
  font-size:11px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.cb-report-contact a{
  background:#211c17;
  color:#f7efe4;
  border-color:#211c17;
}

.cb-featured-cinema{
  position:relative;
  width:100vw;
  min-height:clamp(720px,86vh,920px);
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
  background:#090705;
  color:#f7efe4;
  isolation:isolate;
}

.cb-featured-cinema-bg,
.cb-featured-cinema-bg img,
.cb-featured-cinema-shade{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.cb-featured-cinema-bg{
  overflow:hidden;
}

.cb-featured-cinema-bg img{
  object-fit:cover;
  object-position:center;
  display:block;
  filter:saturate(.9) contrast(1.04) brightness(.92);
  transform:scale(1.035);
  animation:cbReportsKenBurns 18s ease-in-out infinite alternate;
  will-change:transform;
}

@keyframes cbReportsKenBurns{
  0%{transform:scale(1.035) translate3d(0,0,0);}
  50%{transform:scale(1.07) translate3d(-1%, -.7%, 0);}
  100%{transform:scale(1.09) translate3d(.8%, .5%, 0);}
}

.cb-featured-cinema-shade{
  z-index:1;
  background:
    linear-gradient(90deg,rgba(8,6,5,.48) 0%,rgba(8,6,5,.18) 35%,rgba(8,6,5,.40) 100%),
    linear-gradient(180deg,rgba(8,6,5,.58) 0%,rgba(8,6,5,.08) 42%,rgba(8,6,5,.86) 100%);
}

.cb-featured-cinema-grain{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:.055;
  background-image:
    radial-gradient(circle at 20% 14%, #fff 0 1px, transparent 1px),
    radial-gradient(circle at 82% 84%, #fff 0 1px, transparent 1px);
  background-size:18px 18px,23px 23px;
  mix-blend-mode:screen;
}

.cb-featured-cinema-top{
  position:relative;
  z-index:5;
  display:flex;
  justify-content:space-between;
  gap:22px;
  align-items:start;
  width:min(1560px,calc(100vw - 44px));
  margin:0 auto;
  padding:clamp(26px,3vw,42px) 0 0;
}

.cb-featured-cinema-top h1{
  max-width:720px;
  margin:0;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(38px,4.8vw,78px);
  line-height:.86;
  letter-spacing:-.055em;
  font-weight:500;
}

.cb-featured-cinema-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.cb-featured-cinema-actions a{
  border-color:rgba(247,239,228,.24);
  color:#f7efe4;
  background:rgba(247,239,228,.06);
  backdrop-filter:blur(14px);
}

.cb-featured-cinema-actions a.is-primary{
  background:#f7efe4;
  color:#110d09;
  border-color:#f7efe4;
}

.cb-featured-cinema-body{
  position:relative;
  z-index:5;
  width:min(1560px,calc(100vw - 44px));
  min-height:640px;
  margin:0 auto;
}

.cb-featured-list{
  position:absolute;
  left:0;
  top:clamp(70px,11vh,120px);
  bottom:34px;
  width:clamp(320px,24vw,390px);
  display:flex;
  flex-direction:column;
  gap:10px;
  overflow:auto;
  padding-right:6px;
}

.cb-featured-list::-webkit-scrollbar{width:8px;}
.cb-featured-list::-webkit-scrollbar-thumb{
  background:rgba(247,239,228,.14);
  border-radius:999px;
}

.cb-featured-card{
  appearance:none;
  width:100%;
  display:grid;
  grid-template-columns:74px 1fr;
  gap:12px;
  align-items:center;
  padding:10px 12px;
  border-radius:20px;
  border:1px solid rgba(247,239,228,.13);
  background:rgba(247,239,228,.075);
  color:#f7efe4;
  cursor:pointer;
  text-align:left;
  backdrop-filter:blur(12px);
}

.cb-featured-card.is-active{
  border-color:rgba(216,183,109,.76);
  background:rgba(247,239,228,.14);
}

.cb-featured-card img{
  width:74px;
  height:74px;
  border-radius:14px;
  object-fit:cover;
  display:block;
  transition:transform .8s ease;
}

.cb-featured-card:hover img{
  transform:scale(1.06);
}

.cb-featured-card span{
  display:block;
  color:#d8b76d;
  font-size:9px;
  font-weight:850;
  letter-spacing:.14em;
  margin-bottom:4px;
}

.cb-featured-card strong{
  display:block;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:20px;
  line-height:.94;
  font-weight:600;
}

.cb-featured-card em{
  display:block;
  margin-top:4px;
  color:rgba(247,239,228,.64);
  font-size:12px;
  font-style:normal;
}

.cb-featured-copy{
  position:absolute;
  left:clamp(370px,28vw,470px);
  top:clamp(150px,23vh,220px);
  max-width:630px;
}

.cb-featured-copy h2,
.cb-featured-copy h3{
  margin:0;
  max-width:9.5ch;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(58px,5.7vw,104px);
  line-height:.82;
  letter-spacing:-.067em;
  font-weight:500;
  text-wrap:balance;
}

.cb-featured-copy > p:not(.cb-reports-kicker){
  max-width:34ch;
  margin:16px 0 0;
  color:rgba(247,239,228,.84);
  font-size:clamp(16px,1.1vw,19px);
  line-height:1.56;
  text-shadow:0 1px 10px rgba(8,6,5,.36);
}

.cb-featured-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px;
}

.cb-featured-tags span{
  min-height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border-radius:999px;
  border:1px solid rgba(247,239,228,.14);
  background:rgba(247,239,228,.055);
  color:rgba(247,239,228,.84);
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cb-report-proof{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:1180px;
  margin:clamp(54px,7vw,96px) auto;
  padding:0 clamp(18px,4vw,40px);
}

.cb-report-proof article{
  padding:24px;
  border-radius:24px;
  border:1px solid rgba(33,28,23,.12);
  background:rgba(255,255,255,.48);
}

.cb-report-proof span{
  display:block;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:46px;
  line-height:1;
  font-weight:500;
}

.cb-report-proof strong{
  display:block;
  margin-top:8px;
  font-size:13px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.cb-report-proof p{
  color:#706458;
  line-height:1.6;
}

.cb-all-reports,
.cb-seo-entrypoints,
.cb-report-contact{
  max-width:1320px;
  margin:0 auto;
  padding:clamp(62px,7vw,104px) clamp(18px,4vw,40px);
}

.cb-all-reports-head,
.cb-seo-entrypoints{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(280px,.7fr);
  gap:clamp(24px,5vw,72px);
  align-items:end;
}

.cb-all-reports h2,
.cb-seo-entrypoints h2,
.cb-report-contact h2{
  margin:0;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(44px,5.5vw,82px);
  line-height:.88;
  letter-spacing:-.055em;
  font-weight:500;
}

.cb-all-reports-head p,
.cb-seo-entrypoints p,
.cb-report-contact p{
  color:#706458;
  font-size:17px;
  line-height:1.7;
}

.cb-report-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:34px 0 24px;
}

.cb-report-filters button{
  min-height:40px;
  padding:0 15px;
  border-radius:999px;
  border:1px solid rgba(33,28,23,.14);
  background:transparent;
  color:#211c17;
  cursor:pointer;
  font-size:11px;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.cb-report-filters button.is-active{
  background:#211c17;
  color:#f7efe4;
  border-color:#211c17;
}

.cb-report-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.cb-report-card{
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(33,28,23,.12);
  background:rgba(255,255,255,.52);
}

.cb-report-card[hidden]{
  display:none;
}

.cb-report-card a{
  color:#211c17;
  text-decoration:none;
}

.cb-report-card img{
  width:100%;
  height:260px;
  object-fit:cover;
  display:block;
}

.cb-report-card div{
  padding:20px;
}

.cb-report-card span{
  display:block;
  color:#b48f53;
  font-size:10px;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cb-report-card h3{
  margin:10px 0 0;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:32px;
  line-height:.96;
  font-weight:600;
  letter-spacing:-.035em;
}

.cb-report-card p{
  color:#706458;
  line-height:1.6;
}

.cb-report-card em{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  padding:0 11px;
  border-radius:999px;
  background:#211c17;
  color:#f7efe4;
  font-style:normal;
  font-size:10px;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.cb-seo-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.cb-seo-links a{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(33,28,23,.12);
  color:#211c17;
  text-decoration:none;
  background:rgba(255,255,255,.45);
  font-size:12px;
  font-weight:800;
}

.cb-seo-link-groups{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.cb-seo-link-group{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(33,28,23,.10);
  background:rgba(255,255,255,.38);
}

.cb-seo-link-group > span{
  display:block;
  margin-bottom:4px;
  color:#b48f53;
  font-size:10px;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cb-seo-link-group a{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 13px;
  border-radius:999px;
  border:1px solid rgba(33,28,23,.12);
  color:#211c17;
  text-decoration:none;
  background:rgba(255,255,255,.45);
  font-size:12px;
  font-weight:800;
}

.cb-seo-link-group a:hover,
.cb-seo-link-group a:focus-visible{
  border-color:rgba(180,143,83,.42);
  background:rgba(255,255,255,.72);
}

.cb-report-contact{
  text-align:center;
}

.cb-report-contact h2,
.cb-report-contact p{
  margin-left:auto;
  margin-right:auto;
  max-width:820px;
}

.cb-report-contact a{
  margin-top:18px;
}

@media(max-width:980px){
  .cb-featured-cinema{
    min-height:920px;
  }
  .cb-featured-cinema-top{
    flex-direction:column;
  }
  .cb-featured-cinema-body{
    min-height:auto;
  }
  .cb-featured-list{
    display:none;
  }
  .cb-featured-copy{
    position:relative;
    left:auto;
    top:auto;
    max-width:none;
    padding:clamp(80px,18vh,160px) 0 60px;
  }
  .cb-featured-copy h2,
.cb-featured-copy h3{
    font-size:clamp(58px,14vw,88px);
  }
  .cb-report-proof,
  .cb-report-grid,
  .cb-all-reports-head,
  .cb-seo-entrypoints{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .cb-report-card img{
    height:220px;
  }
  .cb-featured-cinema-actions{
    width:100%;
  }
  .cb-featured-cinema-actions a{
    flex:1 1 auto;
  }
}

@media (prefers-reduced-motion: reduce){
  .cb-featured-cinema-bg img{
    animation:none;
    transform:none;
  }
  .cb-featured-card img{
    transition:none;
  }
}

/* V1.2.1 — Reportages complets : premier écran cinéma, page compatible archive WordPress */
.cb-reportages-page{
  overflow-x:hidden;
  background:
    radial-gradient(circle at 12% 0%, rgba(180,143,83,.10), transparent 28%),
    #f6efe5;
}

.cb-featured-cinema-first{
  min-height:100svh;
  padding-top:clamp(78px,7vw,112px);
  margin-top:0;
}

.cb-featured-cinema-first .cb-featured-cinema-shade{
  background:
    linear-gradient(90deg,rgba(8,6,5,.72) 0%,rgba(8,6,5,.38) 32%,rgba(8,6,5,.22) 62%,rgba(8,6,5,.60) 100%),
    linear-gradient(180deg,rgba(8,6,5,.56) 0%,rgba(8,6,5,.10) 38%,rgba(8,6,5,.90) 100%);
}

.cb-featured-cinema-first .cb-featured-cinema-top{
  position:relative;
  z-index:8;
  align-items:flex-start;
  padding-top:0;
}

.cb-featured-home-brandline{
  max-width:760px;
  padding:14px 0 0;
}

.cb-featured-home-brandline .cb-reports-kicker{
  color:rgba(247,239,228,.74);
  margin-bottom:10px;
}

.cb-featured-home-brandline h1{
  margin:0;
  max-width:760px;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(40px,5vw,82px);
  line-height:.86;
  letter-spacing:-.058em;
  font-weight:500;
  color:#f7efe4;
  text-wrap:balance;
  text-shadow:0 16px 44px rgba(0,0,0,.38);
}

.cb-featured-home-brandline p:not(.cb-reports-kicker){
  max-width:56ch;
  margin:18px 0 0;
  color:rgba(247,239,228,.78);
  font-size:clamp(15px,1.15vw,18px);
  line-height:1.65;
}

.cb-featured-cinema-first .cb-featured-cinema-actions{
  padding-top:18px;
}

.cb-featured-cinema-first .cb-featured-cinema-actions a{
  min-height:44px;
  padding-inline:18px;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}

.cb-featured-cinema-first .cb-featured-cinema-actions a:not(.is-primary):hover,
.cb-featured-cinema-first .cb-featured-cinema-actions a:not(.is-primary):focus-visible{
  background:rgba(247,239,228,.13);
}

.cb-featured-cinema-first .cb-featured-cinema-actions a.is-primary:hover,
.cb-featured-cinema-first .cb-featured-cinema-actions a.is-primary:focus-visible{
  background:#fff8ed;
}

.cb-featured-cinema-first .cb-featured-cinema-body{
  min-height:calc(100svh - clamp(170px,18vw,260px));
}

.cb-featured-cinema-first .cb-featured-list{
  top:clamp(34px,6vh,76px);
  bottom:clamp(28px,6vh,76px);
  width:clamp(330px,25vw,410px);
  gap:11px;
  padding:2px 7px 2px 0;
}

.cb-featured-cinema-first .cb-featured-card{
  position:relative;
  grid-template-columns:80px 1fr;
  min-height:104px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(247,239,228,.10),rgba(247,239,228,.045));
  box-shadow:0 16px 45px rgba(0,0,0,.12);
}

.cb-featured-cinema-first .cb-featured-card::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(216,183,109,.34),transparent);
  opacity:0;
  transition:opacity .28s ease;
}

.cb-featured-cinema-first .cb-featured-card.is-active::after{
  opacity:1;
}

.cb-featured-cinema-first .cb-featured-card img{
  width:80px;
  height:80px;
  border-radius:18px;
}

.cb-featured-cinema-first .cb-featured-card strong{
  font-size:22px;
}

.cb-featured-cinema-first .cb-featured-copy{
  top:clamp(108px,22vh,200px);
  left:clamp(390px,30vw,520px);
  max-width:720px;
  padding:26px 0 0;
}

.cb-featured-cinema-first .cb-featured-copy h2,
.cb-featured-cinema-first .cb-featured-copy h3{
  max-width:11ch;
  font-size:clamp(66px,6.2vw,116px);
  text-shadow:0 20px 56px rgba(0,0,0,.38);
}

.cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
  max-width:43ch;
  margin-top:18px;
  color:rgba(247,239,228,.86);
}

.cb-featured-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}

.cb-featured-meta span{
  display:inline-flex;
  min-height:30px;
  align-items:center;
  padding:0 11px;
  border-radius:999px;
  background:rgba(216,183,109,.16);
  color:#f7efe4;
  border:1px solid rgba(216,183,109,.26);
  font-size:10px;
  font-weight:850;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.cb-featured-trustline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,max-content));
  gap:10px 16px;
  margin-top:24px;
  color:rgba(247,239,228,.88);
}

.cb-featured-trustline span{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding-left:20px;
  font-size:12px;
  line-height:1.15;
  white-space:nowrap;
}

.cb-featured-trustline span::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:8px;
  height:8px;
  border-radius:999px;
  border:1px solid #d8b76d;
  box-shadow:0 0 0 4px rgba(216,183,109,.12);
  transform:translateY(-50%);
}

.cb-featured-reassurance{
  position:absolute;
  z-index:7;
  left:clamp(390px,30vw,520px);
  right:clamp(30px,7vw,126px);
  bottom:clamp(28px,5vh,54px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  max-width:880px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(247,239,228,.14);
  background:linear-gradient(135deg,rgba(8,6,5,.58),rgba(8,6,5,.34));
  backdrop-filter:blur(20px);
  box-shadow:0 24px 80px rgba(0,0,0,.24);
}

.cb-featured-reassurance article{
  padding:19px 21px;
  border-right:1px solid rgba(247,239,228,.12);
}

.cb-featured-reassurance article:last-child{
  border-right:0;
}

.cb-featured-reassurance span{
  display:block;
  color:#f7efe4;
  font-size:10px;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.cb-featured-reassurance p{
  margin:8px 0 0;
  color:rgba(247,239,228,.68);
  font-size:13px;
  line-height:1.48;
}

.cb-reports-intro{
  max-width:1320px;
  margin:0 auto;
  padding:clamp(66px,8vw,112px) clamp(18px,4vw,40px) clamp(44px,6vw,76px);
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(280px,.8fr);
  gap:clamp(24px,5vw,72px);
  align-items:center;
  background:#f6efe5;
}

.cb-reports-intro h2{
  margin:0;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(42px,5.2vw,76px);
  line-height:.9;
  letter-spacing:-.055em;
  font-weight:500;
}

.cb-reports-intro p:not(.cb-reports-kicker){
  margin:0;
  color:#706458;
  font-size:17px;
  line-height:1.7;
}

.cb-reports-intro a{
  display:inline-flex;
  margin-top:18px;
  color:#211c17;
  text-decoration:none;
  font-size:11px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(180,143,83,.6);
}

.cb-report-proof{
  margin-top:clamp(22px,4vw,52px);
}

.cb-report-card{
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.cb-report-card:hover,
.cb-report-card:focus-within{
  transform:translateY(-3px);
  border-color:rgba(180,143,83,.32);
  box-shadow:0 22px 60px rgba(33,28,23,.10);
}

.cb-report-card img{
  transition:transform .9s ease;
}

.cb-report-card:hover img,
.cb-report-card:focus-within img{
  transform:scale(1.035);
}

.cb-seo-entrypoints{
  position:relative;
  border-top:1px solid rgba(33,28,23,.08);
  border-bottom:1px solid rgba(33,28,23,.08);
}

.cb-seo-links a:hover,
.cb-seo-links a:focus-visible{
  border-color:rgba(180,143,83,.42);
  background:rgba(255,255,255,.68);
}

@media(max-width:1180px){
  .cb-featured-cinema-first .cb-featured-copy,
  .cb-featured-reassurance{
    left:clamp(360px,34vw,430px);
  }

  .cb-featured-trustline{
    grid-template-columns:repeat(2,minmax(0,max-content));
  }
}

@media(max-width:980px){
  .cb-featured-cinema-first{
    min-height:auto;
    padding-top:clamp(78px,18vw,104px);
    padding-bottom:34px;
  }

  .cb-featured-cinema-first .cb-featured-cinema-top{
    flex-direction:column;
    width:min(100%, calc(100vw - 34px));
  }

  .cb-featured-home-brandline{
    max-width:none;
  }

  .cb-featured-home-brandline h1{
    font-size:clamp(42px,12vw,76px);
  }

  .cb-featured-cinema-first .cb-featured-cinema-actions{
    width:100%;
    padding-top:0;
  }

  .cb-featured-cinema-first .cb-featured-cinema-body{
    width:min(100%, calc(100vw - 34px));
    min-height:auto;
    display:flex;
    flex-direction:column;
  }

  .cb-featured-cinema-first .cb-featured-list{
    position:relative;
    order:2;
    left:auto;
    top:auto;
    bottom:auto;
    width:100%;
    display:flex;
    flex-direction:row;
    gap:10px;
    overflow-x:auto;
    padding:2px 0 10px;
    scroll-snap-type:x mandatory;
  }

  .cb-featured-cinema-first .cb-featured-card{
    flex:0 0 min(82vw,360px);
    scroll-snap-align:start;
  }

  .cb-featured-cinema-first .cb-featured-copy{
    position:relative;
    order:1;
    left:auto;
    top:auto;
    max-width:none;
    padding:clamp(56px,11vh,96px) 0 34px;
  }

  .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-featured-cinema-first .cb-featured-copy h3{
    font-size:clamp(62px,15vw,96px);
  }

  .cb-featured-reassurance{
    position:relative;
    order:3;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:none;
    margin:12px 0 0;
    grid-template-columns:1fr;
  }

  .cb-featured-reassurance article{
    border-right:0;
    border-bottom:1px solid rgba(247,239,228,.12);
  }

  .cb-featured-reassurance article:last-child{
    border-bottom:0;
  }

  .cb-reports-intro,
  .cb-seo-link-groups{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .cb-featured-cinema-first{
    padding-top:88px;
  }

  .cb-featured-home-brandline p:not(.cb-reports-kicker){
    font-size:15px;
  }

  .cb-featured-cinema-actions{
    width:100%;
  }

  .cb-featured-cinema-actions a{
    flex:1 1 auto;
    min-width:0;
    padding-inline:14px;
  }

  .cb-featured-trustline{
    grid-template-columns:1fr;
    gap:8px;
  }

  .cb-featured-trustline span{
    font-size:11px;
  }

  .cb-report-card img{
    height:220px;
  }
}

@media (prefers-reduced-motion: reduce){
  .cb-report-card,
  .cb-report-card img{
    transition:none;
  }
}

/* CB REPORTAGES CINEMA SCROLL V1.2.2 — START */

/*
  Cette page devient une page cinéma :
  - la première section est une scène plein écran ;
  - le texte éditorial est déplacé après la scène ;
  - les réassurances sortent du visuel principal ;
  - les grandes sections desktop se lisent écran par écran.
*/

.cb-reportages-page{
  background:#f6efe5;
}

@media (min-width:981px){
  html{
    scroll-behavior:smooth;
    scroll-snap-type:y proximity;
  }

  .cb-reportages-page main > section{
    scroll-snap-align:start;
  }
}

/* Premier écran : sélection cinéma pure. */
.cb-featured-cinema-first{
  height:100svh;
  min-height:760px;
  max-height:100svh;
  padding-top:0 !important;
  overflow:hidden;
}

.cb-featured-cinema-first .cb-featured-cinema-shade{
  background:
    linear-gradient(90deg,rgba(8,6,5,.78) 0%,rgba(8,6,5,.46) 30%,rgba(8,6,5,.18) 58%,rgba(8,6,5,.62) 100%),
    linear-gradient(180deg,rgba(8,6,5,.54) 0%,rgba(8,6,5,.08) 38%,rgba(8,6,5,.88) 100%);
}

.cb-featured-cinema-first .cb-featured-home-brandline,
.cb-featured-cinema-first .cb-featured-reassurance,
.cb-featured-cinema-first .cb-featured-trustline{
  display:none !important;
}

.cb-featured-cinema-first .cb-featured-cinema-top{
  position:absolute;
  z-index:12;
  top:clamp(92px,10vh,132px);
  right:clamp(22px,4vw,72px);
  width:auto;
  margin:0;
  padding:0;
  display:block;
}

.cb-featured-cinema-first .cb-featured-cinema-actions{
  padding-top:0;
  display:flex;
  gap:10px;
  justify-content:flex-end;
}

.cb-featured-cinema-first .cb-featured-cinema-actions a{
  min-height:46px;
  padding:0 20px;
  border-color:rgba(247,239,228,.28);
  box-shadow:0 18px 54px rgba(0,0,0,.28);
}

.cb-featured-cinema-first .cb-featured-cinema-body{
  position:relative;
  z-index:5;
  width:min(1560px, calc(100vw - 52px));
  height:100%;
  min-height:0;
  margin:0 auto;
}

.cb-featured-cinema-first .cb-featured-list{
  top:clamp(118px,15vh,168px);
  bottom:clamp(34px,6vh,72px);
  width:clamp(330px,25vw,410px);
  gap:11px;
  padding:2px 8px 2px 0;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}

.cb-featured-cinema-first .cb-featured-card{
  min-height:104px;
  grid-template-columns:80px 1fr;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(247,239,228,.105),rgba(247,239,228,.045));
  box-shadow:0 16px 45px rgba(0,0,0,.12);
}

.cb-featured-cinema-first .cb-featured-card strong{
  font-size:22px;
}

.cb-featured-cinema-first .cb-featured-card img{
  width:80px;
  height:80px;
  border-radius:18px;
}

.cb-featured-cinema-first .cb-featured-copy{
  position:absolute;
  left:clamp(430px,32vw,560px);
  right:clamp(22px,6vw,92px);
  top:auto;
  bottom:clamp(72px,10vh,126px);
  max-width:760px;
  padding:0;
}

.cb-featured-cinema-first .cb-featured-copy h2,
.cb-featured-cinema-first .cb-featured-copy h3{
  max-width:12ch;
  font-size:clamp(62px,6.2vw,110px);
  line-height:.82;
  text-shadow:0 22px 62px rgba(0,0,0,.42);
}

.cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
  max-width:46ch;
  margin-top:18px;
  color:rgba(247,239,228,.86);
  text-shadow:0 12px 34px rgba(0,0,0,.34);
}

.cb-featured-cinema-first .cb-featured-tags{
  max-width:620px;
}

.cb-featured-cinema-first .cb-featured-meta span,
.cb-featured-cinema-first .cb-featured-tags span{
  backdrop-filter:blur(12px);
}

/* Intro éditoriale déplacée sous la scène cinéma. */
.cb-cinema-editorial-intro{
  min-height:100svh;
  width:min(1320px,100%);
  margin:0 auto;
  padding:clamp(72px,8vw,118px) clamp(18px,4vw,40px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);
  gap:clamp(34px,6vw,86px);
  align-items:center;
  background:#f6efe5;
  color:#211c17;
}

.cb-cinema-editorial-intro__text h1{
  margin:0;
  max-width:920px;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(54px,7.2vw,112px);
  line-height:.86;
  letter-spacing:-.064em;
  font-weight:500;
  text-wrap:balance;
}

.cb-cinema-editorial-intro__text p:not(.cb-reports-kicker){
  max-width:62ch;
  margin:24px 0 0;
  color:#706458;
  font-size:clamp(17px,1.35vw,22px);
  line-height:1.72;
}

.cb-cinema-editorial-intro__proof{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.cb-cinema-editorial-intro__proof article{
  min-height:190px;
  padding:24px;
  border-radius:28px;
  border:1px solid rgba(33,28,23,.11);
  background:
    linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,255,255,.30));
  box-shadow:0 22px 70px rgba(33,28,23,.07);
}

.cb-cinema-editorial-intro__proof span{
  display:block;
  color:#b48f53;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(36px,3.6vw,56px);
  line-height:.95;
  letter-spacing:-.045em;
}

.cb-cinema-editorial-intro__proof strong{
  display:block;
  margin-top:12px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  line-height:1.3;
  text-transform:uppercase;
}

.cb-cinema-editorial-intro__proof p{
  margin:12px 0 0;
  color:#706458;
  font-size:14px;
  line-height:1.62;
}

/* Sections suivantes : lecture écran par écran sur desktop. */
@media (min-width:981px){
  .cb-reports-intro,
  .cb-report-proof,
  .cb-all-reports,
  .cb-seo-entrypoints,
  .cb-report-contact{
    min-height:100svh;
    align-content:center;
  }

  .cb-reports-intro{
    display:grid;
  }

  .cb-report-proof{
    display:grid;
    align-items:center;
  }

  .cb-all-reports{
    display:flex;
    flex-direction:column;
    justify-content:center;
  }

  .cb-report-grid{
    max-height:calc(100svh - 310px);
    overflow:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding-right:6px;
  }

  .cb-report-grid::-webkit-scrollbar,
  .cb-featured-list::-webkit-scrollbar{
    width:8px;
  }

  .cb-report-grid::-webkit-scrollbar-thumb,
  .cb-featured-list::-webkit-scrollbar-thumb{
    background:rgba(33,28,23,.18);
    border-radius:999px;
  }

  .cb-featured-list::-webkit-scrollbar-thumb{
    background:rgba(247,239,228,.18);
  }

  .cb-seo-entrypoints{
    display:grid;
  }

  .cb-report-contact{
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
}

/* Tablette / mobile : on garde une lecture naturelle, sans scroll piégé. */
@media (max-width:980px){
  html{
    scroll-snap-type:none;
  }

  .cb-featured-cinema-first{
    height:auto;
    max-height:none;
    min-height:100svh;
    padding-top:clamp(86px,18vw,112px) !important;
    padding-bottom:34px;
  }

  .cb-featured-cinema-first .cb-featured-cinema-top{
    position:relative;
    top:auto;
    right:auto;
    width:min(100%, calc(100vw - 34px));
    margin:0 auto;
    display:block;
  }

  .cb-featured-cinema-first .cb-featured-cinema-actions{
    width:100%;
    justify-content:flex-start;
  }

  .cb-featured-cinema-first .cb-featured-cinema-body{
    width:min(100%, calc(100vw - 34px));
    height:auto;
    min-height:auto;
    display:flex;
    flex-direction:column;
  }

  .cb-featured-cinema-first .cb-featured-copy{
    position:relative;
    order:1;
    left:auto;
    right:auto;
    bottom:auto;
    max-width:none;
    padding:clamp(54px,10vh,92px) 0 32px;
  }

  .cb-featured-cinema-first .cb-featured-list{
    position:relative;
    order:2;
    left:auto;
    top:auto;
    bottom:auto;
    width:100%;
    display:flex;
    flex-direction:row;
    gap:10px;
    overflow-x:auto;
    padding:2px 0 10px;
    scroll-snap-type:x mandatory;
  }

  .cb-featured-cinema-first .cb-featured-card{
    flex:0 0 min(82vw,360px);
    scroll-snap-align:start;
  }

  .cb-cinema-editorial-intro{
    min-height:auto;
    grid-template-columns:1fr;
    padding:clamp(58px,12vw,86px) clamp(18px,5vw,28px);
  }

  .cb-cinema-editorial-intro__proof{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .cb-featured-cinema-first .cb-featured-cinema-actions a{
    flex:1 1 auto;
    min-width:0;
    padding-inline:14px;
  }

  .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-featured-cinema-first .cb-featured-copy h3{
    font-size:clamp(58px,15vw,92px);
  }

  .cb-cinema-editorial-intro__text h1{
    font-size:clamp(48px,15vw,76px);
  }

  .cb-cinema-editorial-intro__proof article{
    min-height:auto;
  }
}

/* CB REPORTAGES CINEMA SCROLL V1.2.2 — END */

/* CB REPORTAGES COMPACT CINEMA HEADER V1.2.2B — START */

/*
  Page Reportages complets uniquement.
  On conserve le header partagé, mais on le rend plus discret pour laisser
  la scène cinéma respirer.
*/

@media (min-width: 981px){

  .cb-featured-cinema-first .cb-featured-cinema-top{
    top: 110px !important;
  }

  .cb-featured-cinema-first .cb-featured-list{
    top: 122px !important;
  }
}

/* Sur les écrans moyens, on réduit encore pour ne pas écraser l’image. */


/* Mobile : on garde une barre compacte, sans inventer une navigation parallèle. */


/* CB REPORTAGES COMPACT CINEMA HEADER V1.2.2B — END */

/* CB REPORTAGES SIGNATURE MENU V1.2.3 — START */

/*
  Page Reportages complets uniquement :
  - le premier écran devient une scène cinéma sans header visible ;
  - une signature discrète remplace la présence du menu ;
  - le header partagé réapparaît au scroll, avec le menu complet.
*/

/* Signature cinéma */
.cb-cinema-signature{
  position:absolute;
  z-index:18;
  right:clamp(22px,4vw,68px);
  bottom:clamp(22px,4vh,46px);
  display:inline-flex;
  align-items:baseline;
  gap:8px;
  color:rgba(247,239,228,.84);
  text-decoration:none;
  text-shadow:0 14px 34px rgba(0,0,0,.42);
  opacity:.88;
  transition:opacity .22s ease, transform .22s ease, color .22s ease;
}

.cb-cinema-signature span{
  font-family:Georgia, "Times New Roman", serif;
  font-style:italic;
  font-size:clamp(15px,1.2vw,20px);
  opacity:.68;
}

.cb-cinema-signature strong{
  font-family:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  font-weight:500;
  font-size:clamp(22px,2.2vw,36px);
  line-height:1;
  letter-spacing:-.045em;
}

.cb-cinema-signature:hover,
.cb-cinema-signature:focus-visible{
  opacity:1;
  color:#fff7ec;
  transform:translateY(-2px);
}

/* Au premier écran : le header partagé reste présent dans le HTML mais disparaît visuellement. */
body.cb-reportages-page.cb-cinema-at-top .cb-header,
body.cb-reportages-page.cb-cinema-at-top .cb-floating-header,
body.cb-reportages-page.cb-cinema-at-top header[role="banner"]{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate(-50%, -18px) !important;
}

/* Quand on descend : le header partagé revient. */
body.cb-reportages-page:not(.cb-cinema-at-top) .cb-header,
body.cb-reportages-page:not(.cb-cinema-at-top) .cb-floating-header,
body.cb-reportages-page:not(.cb-cinema-at-top) header[role="banner"]{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transition:
    opacity .26s ease,
    visibility .26s ease,
    transform .26s ease,
    background .26s ease,
    width .26s ease !important;
}

/* Desktop : au scroll, on réouvre le vrai menu partagé. */
@media (min-width:981px){
  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-header,
  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-floating-header,
  body.cb-reportages-page:not(.cb-cinema-at-top) header[role="banner"]{
    top:18px !important;
    left:50% !important;
    right:auto !important;
    width:min(1460px, calc(100vw - 64px)) !important;
    transform:translateX(-50%) !important;
    background:rgba(20,17,14,.72) !important;
    border-color:rgba(247,239,228,.20) !important;
    box-shadow:0 20px 70px rgba(0,0,0,.22) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }

  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-nav,
  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-main-nav,
  body.cb-reportages-page:not(.cb-cinema-at-top) .site-nav,
  body.cb-reportages-page:not(.cb-cinema-at-top) .main-navigation,
  body.cb-reportages-page:not(.cb-cinema-at-top) nav[aria-label="Navigation principale"],
  body.cb-reportages-page:not(.cb-cinema-at-top) nav[aria-label="Menu principal"]{
    display:flex !important;
  }

  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-header-shell,
  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-header__inner,
  body.cb-reportages-page:not(.cb-cinema-at-top) .site-header__inner,
  body.cb-reportages-page:not(.cb-cinema-at-top) .header-inner{
    min-height:64px !important;
  }

  /* Puisqu’il n’y a plus de header sur la première scène, les éléments cinéma remontent légèrement. */
  .cb-featured-cinema-first .cb-featured-cinema-top{
    top:clamp(34px,5vh,58px) !important;
  }

  .cb-featured-cinema-first .cb-featured-list{
    top:clamp(44px,7vh,78px) !important;
  }

  .cb-featured-cinema-first .cb-featured-copy{
    bottom:clamp(76px,10vh,130px) !important;
  }
}

/* Mobile : la signature reste, le header revient après le premier mouvement de scroll. */
@media (max-width:980px){
  body.cb-reportages-page.cb-cinema-at-top .cb-header,
  body.cb-reportages-page.cb-cinema-at-top .cb-floating-header,
  body.cb-reportages-page.cb-cinema-at-top header[role="banner"]{
    transform:translateY(-18px) !important;
  }

  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-header,
  body.cb-reportages-page:not(.cb-cinema-at-top) .cb-floating-header,
  body.cb-reportages-page:not(.cb-cinema-at-top) header[role="banner"]{
    transform:none !important;
  }

  .cb-cinema-signature{
    right:18px;
    bottom:18px;
  }

  .cb-cinema-signature strong{
    font-size:24px;
  }
}

@media (max-width:640px){
  .cb-cinema-signature{
    left:18px;
    right:auto;
    bottom:18px;
  }

  .cb-cinema-signature span{
    font-size:14px;
  }

  .cb-cinema-signature strong{
    font-size:22px;
  }
}

/* On laisse les CTA cinéma visibles, mais on les descend légèrement pour ne plus toucher au header caché. */
@media (min-width:981px){
  body.cb-reportages-page.cb-cinema-at-top .cb-featured-cinema-first .cb-featured-cinema-top{
    top:clamp(34px,5vh,58px) !important;
    right:clamp(24px,4vw,72px) !important;
    z-index:20 !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-featured-cinema-first .cb-featured-list{
    top:clamp(54px,7vh,82px) !important;
  }
}

/* CB REPORTAGES HIDE FULL HEADER V1.2.4 — END */

/* CB REPORTAGES ACTIONS + SHARED SECTIONS V1.2.5 — START */

/*
  Corrections :
  - CTA liés clairement au reportage affiché.
  - Header partagé recentré quand il revient au scroll.
  - Sections sous le cinéma rapprochées du shell partagé, sans toucher à la home.
*/

/* CTA article */
.cb-featured-cinema-actions{
  align-items:flex-end;
}

.cb-featured-cinema-actions::before{
  content:"Reportage affiché";
  flex:0 0 100%;
  display:block;
  margin:0 2px 8px 0;
  color:rgba(247,239,228,.64);
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-align:right;
}

.cb-featured-cinema-actions a{
  white-space:nowrap;
}

@media (max-width:680px){
  .cb-featured-cinema-actions::before{
    text-align:left;
    margin-bottom:10px;
  }
}

/* Header partagé : caché sur le premier écran, parfaitement recentré au scroll. */


/* Sections sous cinéma : elles gardent leur rôle reportages, mais héritent mieux du rythme partagé. */
.cb-reportages-below-shared{
  box-sizing:border-box;
}

.cb-reportages-page .cb-cinema-editorial-intro,
.cb-reportages-page .cb-reports-intro,
.cb-reportages-page .cb-report-proof,
.cb-reportages-page .cb-all-reports,
.cb-reportages-page .cb-seo-entrypoints,
.cb-reportages-page .cb-report-contact{
  position:relative;
  isolation:isolate;
}

/* Évite que le header réapparu mange le début des sections. */
@media (min-width:981px){
  .cb-reportages-page .cb-cinema-editorial-intro,
  .cb-reportages-page .cb-reports-intro,
  .cb-reportages-page .cb-report-proof,
  .cb-reportages-page .cb-all-reports,
  .cb-reportages-page .cb-seo-entrypoints,
  .cb-reportages-page .cb-report-contact{
    scroll-margin-top:96px;
  }
}

/* Harmonisation légère avec le fond partagé ivoire/anthracite. */
.cb-reportages-page .cb-cinema-editorial-intro,
.cb-reportages-page .cb-reports-intro,
.cb-reportages-page .cb-report-proof,
.cb-reportages-page .cb-all-reports,
.cb-reportages-page .cb-seo-entrypoints{
  background-color:#f6efe5;
}

.cb-reportages-page .cb-report-contact{
  background-color:#211c17;
}

/* CB REPORTAGES ACTIONS + SHARED SECTIONS V1.2.5 — END */

/* CB REPORTAGES SCROLL FLUID V1.2.6 — START */

/*
  Correction UX :
  - seule la première scène cinéma reste plein écran ;
  - les sections suivantes repassent en scroll naturel ;
  - les assurances deviennent une section compacte ;
  - la grille des reportages ne crée plus de scroll interne.
*/

/* Stop au scroll snap global : il créait des “slides” trop rigides. */
html{
  scroll-snap-type:none !important;
}

@media (min-width:981px){
  html{
    scroll-snap-type:none !important;
  }

  .cb-reportages-page main > section{
    scroll-snap-align:none !important;
  }
}

/* La scène cinéma reste le seul vrai écran plein. */
.cb-reportages-page .cb-featured-cinema-first{
  min-height:100svh !important;
  height:100svh !important;
  max-height:100svh !important;
}

/* Toutes les sections après le cinéma reprennent une hauteur naturelle. */
@media (min-width:981px){
  .cb-reportages-page .cb-cinema-editorial-intro,
  .cb-reportages-page .cb-reports-intro,
  .cb-reportages-page .cb-report-proof,
  .cb-reportages-page .cb-all-reports,
  .cb-reportages-page .cb-seo-entrypoints,
  .cb-reportages-page .cb-report-contact{
    min-height:auto !important;
    height:auto !important;
    align-content:initial !important;
  }
}

/* Intro éditoriale : grande, mais pas bloquée en slide. */
.cb-reportages-page .cb-cinema-editorial-intro{
  min-height:auto !important;
  padding-top:clamp(82px,8vw,132px) !important;
  padding-bottom:clamp(44px,5vw,72px) !important;
}

/* Assurances : section compacte, pas une page entière. */
.cb-reportages-page .cb-report-proof{
  min-height:auto !important;
  padding-top:clamp(28px,4vw,54px) !important;
  padding-bottom:clamp(58px,6vw,92px) !important;
}

.cb-reportages-page .cb-report-proof .cb-section-heading,
.cb-reportages-page .cb-report-proof .cb-reports-section-heading,
.cb-reportages-page .cb-report-proof header{
  margin-bottom:clamp(22px,3vw,36px) !important;
}

/* Les cartes d’assurances restent premium, mais moins énormes. */
.cb-reportages-page .cb-report-proof article,
.cb-reportages-page .cb-report-proof .cb-proof-card,
.cb-reportages-page .cb-report-proof .cb-report-proof-card{
  min-height:0 !important;
  padding:clamp(24px,3vw,38px) !important;
}

/* Grille reportages : suppression du scroll interne qui créait le bug. */
.cb-reportages-page .cb-report-grid{
  max-height:none !important;
  overflow:visible !important;
  padding-right:0 !important;
}

/* Section Tous les reportages : scroll de page normal. */
.cb-reportages-page .cb-all-reports{
  min-height:auto !important;
  padding-top:clamp(72px,7vw,110px) !important;
  padding-bottom:clamp(72px,7vw,110px) !important;
  overflow:visible !important;
}

/* Entrées SEO : compacte et lisible. */
.cb-reportages-page .cb-seo-entrypoints{
  min-height:auto !important;
  padding-top:clamp(68px,6vw,100px) !important;
  padding-bottom:clamp(68px,6vw,100px) !important;
}

/* CTA final : garde de l’impact sans imposer un slide. */
.cb-reportages-page .cb-report-contact{
  min-height:auto !important;
  padding-top:clamp(76px,8vw,126px) !important;
  padding-bottom:clamp(76px,8vw,126px) !important;
}

/* Le header fixe ne doit pas masquer le haut des sections. */
.cb-reportages-page .cb-cinema-editorial-intro,
.cb-reportages-page .cb-reports-intro,
.cb-reportages-page .cb-report-proof,
.cb-reportages-page .cb-all-reports,
.cb-reportages-page .cb-seo-entrypoints,
.cb-reportages-page .cb-report-contact{
  scroll-margin-top:110px !important;
}

/* Petite respiration entre intro et assurances. */
.cb-reportages-page .cb-cinema-editorial-intro + .cb-report-proof,
.cb-reportages-page .cb-reports-intro + .cb-report-proof{
  margin-top:0 !important;
}

/* Mobile : encore plus naturel, aucun comportement de slide. */
@media (max-width:980px){
  .cb-reportages-page .cb-featured-cinema-first{
    height:auto !important;
    max-height:none !important;
    min-height:100svh !important;
  }

  .cb-reportages-page .cb-cinema-editorial-intro,
  .cb-reportages-page .cb-reports-intro,
  .cb-reportages-page .cb-report-proof,
  .cb-reportages-page .cb-all-reports,
  .cb-reportages-page .cb-seo-entrypoints,
  .cb-reportages-page .cb-report-contact{
    min-height:auto !important;
    height:auto !important;
    scroll-margin-top:86px !important;
  }
}

/* CB REPORTAGES SCROLL FLUID V1.2.6 — END */

/* CB REPORTAGES BELOW CINEMA V1.2.7 — START */

/*
  Refonte uniquement sous le premier écran cinéma.
  La scène cinéma du haut n’est pas modifiée.
*/

html{
  scroll-snap-type:none !important;
}

.cb-reportages-page main > section{
  scroll-snap-align:none !important;
}

.cb-below-cinema{
  position:relative;
  isolation:isolate;
  background:#f6efe5;
  color:#211c17;
  overflow:hidden;
}

.cb-below-cinema::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 16% 8%, rgba(180,143,83,.11), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(33,28,23,.055), transparent 30%);
  opacity:.95;
}

.cb-below-cinema__inner{
  width:min(1320px, calc(100% - clamp(34px,7vw,120px)));
  margin:0 auto;
}

.cb-below-cinema__eyebrow{
  margin:0 0 18px;
  color:#b48f53;
  text-transform:uppercase;
  letter-spacing:.19em;
  font-size:11px;
  line-height:1.2;
  font-weight:900;
}

.cb-below-cinema h1,
.cb-below-cinema h2,
.cb-below-cinema h3{
  color:#211c17;
  font-family:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  font-weight:500;
  letter-spacing:-.06em;
}

.cb-below-cinema p{
  color:#706458;
}

/* Ouverture après cinéma */
.cb-below-cinema-opening{
  padding:clamp(78px,8vw,126px) 0 clamp(52px,6vw,86px);
}

.cb-below-cinema-opening__grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.82fr);
  gap:clamp(34px,7vw,96px);
  align-items:end;
}

.cb-below-cinema-opening h1{
  margin:0;
  max-width:900px;
  font-size:clamp(58px,8vw,126px);
  line-height:.84;
  text-wrap:balance;
}

.cb-below-cinema-opening__text{
  padding-bottom:clamp(6px,2vw,26px);
}

.cb-below-cinema-opening__text p{
  margin:0;
  max-width:620px;
  font-size:clamp(17px,1.35vw,22px);
  line-height:1.75;
}

.cb-below-cinema-opening__text p + p{
  margin-top:18px;
}

.cb-below-cinema-proof{
  margin-top:clamp(44px,5vw,74px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.cb-below-cinema-proof article{
  min-height:0;
  padding:clamp(24px,3vw,38px);
  border:1px solid rgba(33,28,23,.11);
  border-radius:28px;
  background:rgba(255,255,255,.52);
  box-shadow:0 24px 70px rgba(33,28,23,.055);
}

.cb-below-cinema-proof span{
  display:block;
  color:#211c17;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(42px,4vw,68px);
  line-height:.9;
  letter-spacing:-.06em;
}

.cb-below-cinema-proof strong{
  display:block;
  margin-top:16px;
  color:#211c17;
  font-size:11px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.cb-below-cinema-proof p{
  margin:16px 0 0;
  font-size:15px;
  line-height:1.66;
}

/* Approche cinéma */
.cb-below-cinema-approach{
  padding:clamp(68px,7vw,112px) 0;
  background:#211c17;
  color:#f7efe4;
}

.cb-below-cinema-approach::before{
  background:
    radial-gradient(circle at 80% 0%, rgba(180,143,83,.22), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,0));
}

.cb-below-cinema-approach h2,
.cb-below-cinema-approach h3{
  color:#f7efe4;
}

.cb-below-cinema-approach p{
  color:rgba(247,239,228,.68);
}

.cb-below-cinema-approach__grid{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:clamp(34px,7vw,96px);
  align-items:start;
}

.cb-below-cinema-sticky{
  position:sticky;
  top:118px;
}

.cb-below-cinema-sticky h2{
  margin:0;
  font-size:clamp(48px,6.5vw,104px);
  line-height:.86;
  text-wrap:balance;
}

.cb-below-cinema-chapters{
  display:grid;
  gap:14px;
}

.cb-below-cinema-chapters article{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:clamp(18px,3vw,38px);
  padding:clamp(24px,3vw,40px);
  border:1px solid rgba(247,239,228,.13);
  border-radius:30px;
  background:linear-gradient(135deg,rgba(247,239,228,.08),rgba(247,239,228,.035));
}

.cb-below-cinema-chapters span{
  color:#c6a15e;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(42px,5vw,76px);
  line-height:.8;
  letter-spacing:-.055em;
}

.cb-below-cinema-chapters h3{
  margin:0;
  font-size:clamp(30px,3vw,48px);
  line-height:.96;
}

.cb-below-cinema-chapters p{
  margin:12px 0 0;
  max-width:620px;
  font-size:16px;
  line-height:1.72;
}

/* Tous les reportages */
.cb-below-cinema-all{
  padding:clamp(76px,8vw,126px) 0;
}

.cb-below-cinema-all__header{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);
  gap:clamp(30px,6vw,86px);
  align-items:end;
  margin-bottom:clamp(34px,5vw,64px);
}

.cb-below-cinema-all h2{
  margin:0;
  max-width:880px;
  font-size:clamp(52px,7vw,112px);
  line-height:.86;
  text-wrap:balance;
}

.cb-below-cinema-all__header > p{
  margin:0 0 10px;
  max-width:620px;
  font-size:clamp(16px,1.25vw,20px);
  line-height:1.75;
}

.cb-below-cinema-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 clamp(28px,4vw,48px);
}

.cb-below-cinema-filters a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  color:#211c17;
  border:1px solid rgba(33,28,23,.14);
  background:rgba(255,255,255,.35);
  text-decoration:none;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.cb-below-cinema-filters a:first-child{
  color:#f7efe4;
  background:#211c17;
  border-color:#211c17;
}

.cb-below-cinema-report-grid{
  max-height:none !important;
  overflow:visible !important;
  padding:0 !important;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(16px,2vw,26px);
}

.cb-below-cinema-report-grid .cb-report-card{
  min-height:100%;
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(33,28,23,.11);
  background:rgba(255,255,255,.50);
  box-shadow:0 24px 80px rgba(33,28,23,.06);
}

.cb-below-cinema-report-grid .cb-report-card:nth-child(1){
  grid-column:span 2;
}

.cb-below-cinema-report-grid .cb-report-card img{
  width:100%;
  aspect-ratio:16/8.8;
  object-fit:cover;
}

.cb-below-cinema-report-grid .cb-report-card:nth-child(1) img{
  aspect-ratio:16/7.3;
}

/* Entrées SEO */
.cb-below-cinema-seo{
  padding:clamp(70px,7vw,112px) 0;
  background:#efe4d5;
}

.cb-below-cinema-seo__grid{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(34px,7vw,90px);
  align-items:start;
}

.cb-below-cinema-seo h2{
  margin:0;
  font-size:clamp(46px,6vw,92px);
  line-height:.88;
}

.cb-below-cinema-seo__groups{
  display:grid;
  gap:14px;
}

.cb-below-cinema-seo__groups article{
  padding:clamp(22px,3vw,34px);
  border-radius:28px;
  border:1px solid rgba(33,28,23,.12);
  background:rgba(255,255,255,.38);
}

.cb-below-cinema-seo__groups h3{
  margin:0 0 18px;
  font-size:clamp(28px,3vw,42px);
  line-height:.95;
}

.cb-below-cinema-seo__groups div{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.cb-below-cinema-seo__groups a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 15px;
  border-radius:999px;
  color:#211c17;
  border:1px solid rgba(33,28,23,.12);
  text-decoration:none;
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Contact final */
.cb-below-cinema-contact{
  padding:clamp(78px,8vw,128px) 0;
  background:#211c17;
  color:#f7efe4;
}

.cb-below-cinema-contact::before{
  background:
    radial-gradient(circle at 20% 20%, rgba(180,143,83,.22), transparent 32%),
    radial-gradient(circle at 90% 10%, rgba(247,239,228,.08), transparent 28%);
}

.cb-below-cinema-contact__box{
  text-align:center;
  max-width:980px;
}

.cb-below-cinema-contact h2{
  margin:0 auto;
  color:#f7efe4;
  max-width:880px;
  font-size:clamp(52px,7vw,112px);
  line-height:.86;
}

.cb-below-cinema-contact p:not(.cb-below-cinema__eyebrow){
  margin:24px auto 0;
  max-width:680px;
  color:rgba(247,239,228,.72);
  font-size:clamp(17px,1.35vw,22px);
  line-height:1.72;
}

.cb-below-cinema-contact a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  margin-top:34px;
  padding:0 26px;
  border-radius:999px;
  color:#211c17;
  background:#f7efe4;
  text-decoration:none;
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

/* Header partagé : au scroll, centré correctement. */


/* Responsive */
@media (max-width:1100px){
  .cb-below-cinema-opening__grid,
  .cb-below-cinema-approach__grid,
  .cb-below-cinema-all__header,
  .cb-below-cinema-seo__grid{
    grid-template-columns:1fr;
  }

  .cb-below-cinema-sticky{
    position:relative;
    top:auto;
  }

  .cb-below-cinema-proof{
    grid-template-columns:1fr;
  }

  .cb-below-cinema-report-grid{
    grid-template-columns:1fr 1fr;
  }

  .cb-below-cinema-report-grid .cb-report-card:nth-child(1){
    grid-column:span 2;
  }
}

@media (max-width:720px){
  .cb-below-cinema__inner{
    width:min(100% - 34px, 1320px);
  }

  .cb-below-cinema-opening,
  .cb-below-cinema-approach,
  .cb-below-cinema-all,
  .cb-below-cinema-seo,
  .cb-below-cinema-contact{
    padding-top:58px;
    padding-bottom:58px;
  }

  .cb-below-cinema-opening h1,
  .cb-below-cinema-all h2,
  .cb-below-cinema-contact h2{
    font-size:clamp(48px,15vw,78px);
  }

  .cb-below-cinema-proof{
    margin-top:34px;
  }

  .cb-below-cinema-chapters article{
    grid-template-columns:1fr;
  }

  .cb-below-cinema-report-grid{
    grid-template-columns:1fr;
  }

  .cb-below-cinema-report-grid .cb-report-card:nth-child(1){
    grid-column:auto;
  }
}

/* CB REPORTAGES BELOW CINEMA V1.2.7 — END */

/* CB REPORTAGES CLEAN UI V1.2.8 — START */

/*
  Nettoyage visuel :
  - le lien "Aller au contenu" redevient un vrai skip-link accessible uniquement au focus ;
  - les anciens boutons "Continuer" / contrôles de scroll parasites sont masqués ;
  - les cartes de chapitres retrouvent une lecture correcte.
*/

/* Skip link : invisible sauf navigation clavier. */
.cb-reportages-page .cb-skip-link,
.cb-reportages-page a[href="#contenu"].cb-skip-link,
.cb-reportages-page a[href="#main"].cb-skip-link,
.cb-reportages-page a[href="#content"].cb-skip-link{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.cb-reportages-page .cb-skip-link:focus,
.cb-reportages-page a[href="#contenu"].cb-skip-link:focus,
.cb-reportages-page a[href="#main"].cb-skip-link:focus,
.cb-reportages-page a[href="#content"].cb-skip-link:focus{
  position:fixed !important;
  top:16px !important;
  left:16px !important;
  z-index:99999 !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  padding:12px 16px !important;
  clip:auto !important;
  clip-path:none !important;
  border-radius:999px !important;
  background:#f7efe4 !important;
  color:#211c17 !important;
  text-decoration:none !important;
  font-weight:900 !important;
}

/* Anciennes navigations / contrôles "continuer" hérités. */
.cb-reportages-page .cb-scroll-continue,
.cb-reportages-page .cb-continue,
.cb-reportages-page .cb-next-section,
.cb-reportages-page .cb-section-continue,
.cb-reportages-page .cb-immersive-continue,
.cb-reportages-page .cb-story-continue,
.cb-reportages-page .cb-carousel-continue,
.cb-reportages-page [data-cb-continue],
.cb-reportages-page [aria-label="Continuer"],
.cb-reportages-page [title="Continuer"]{
  display:none !important;
}

/* Si un ancien rail de navigation de section subsiste sous le CTA final. */
.cb-reportages-page .cb-below-cinema-contact + .cb-scroll-nav,
.cb-reportages-page .cb-below-cinema-contact + .cb-section-nav,
.cb-reportages-page .cb-below-cinema-contact + .cb-immersive-nav,
.cb-reportages-page .cb-below-cinema-contact + nav{
  display:none !important;
}

/* Correction du bloc chapitres : le paragraphe doit occuper la colonne texte. */
@media (min-width:721px){
  .cb-reportages-page .cb-below-cinema-chapters article{
    grid-template-columns:minmax(64px, .18fr) minmax(0, 1fr) !important;
    align-items:start !important;
  }

  .cb-reportages-page .cb-below-cinema-chapters article > span{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
  }

  .cb-reportages-page .cb-below-cinema-chapters article > h3{
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .cb-reportages-page .cb-below-cinema-chapters article > p{
    grid-column:2 !important;
    grid-row:2 !important;
    max-width:680px !important;
  }
}

/* Évite les énormes vides au-dessus du CTA final si un ancien module est masqué. */
.cb-reportages-page .cb-below-cinema-contact{
  margin-bottom:0 !important;
}

/* CB REPORTAGES CLEAN UI V1.2.8 — END */

/* CB REPORTAGES SEO FLOW V1.2.9 — START */

/*
  V1.2.9 :
  - hover doré sur les reportages du premier écran ;
  - CTA déplacé avant l’encart SEO ;
  - encart SEO visible juste au-dessus du footer ;
  - correction du contraste avec le footer.
*/

/* Survol doré des cartes de la sélection cinéma */
.cb-featured-cinema-first .cb-featured-card{
  position:relative;
  overflow:hidden;
  transition:
    transform .22s ease,
    border-color .22s ease,
    background .22s ease,
    box-shadow .22s ease;
}

.cb-featured-cinema-first .cb-featured-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    radial-gradient(circle at 18% 24%, rgba(198,161,94,.34), transparent 34%),
    linear-gradient(135deg, rgba(198,161,94,.22), rgba(247,239,228,.055));
  opacity:0;
  transition:opacity .22s ease;
}

.cb-featured-cinema-first .cb-featured-card > *{
  position:relative;
  z-index:1;
}

.cb-featured-cinema-first .cb-featured-card:hover,
.cb-featured-cinema-first .cb-featured-card:focus-visible,
.cb-featured-cinema-first .cb-featured-card.is-active,
.cb-featured-cinema-first .cb-featured-card[aria-selected="true"]{
  border-color:rgba(198,161,94,.92) !important;
  background:linear-gradient(135deg, rgba(198,161,94,.20), rgba(247,239,228,.08)) !important;
  box-shadow:
    0 22px 70px rgba(0,0,0,.28),
    0 0 0 1px rgba(198,161,94,.22) inset,
    0 0 34px rgba(198,161,94,.18) !important;
  transform:translateX(5px);
}

.cb-featured-cinema-first .cb-featured-card:hover::before,
.cb-featured-cinema-first .cb-featured-card:focus-visible::before,
.cb-featured-cinema-first .cb-featured-card.is-active::before,
.cb-featured-cinema-first .cb-featured-card[aria-selected="true"]::before{
  opacity:1;
}

.cb-featured-cinema-first .cb-featured-card:hover img,
.cb-featured-cinema-first .cb-featured-card:focus-visible img{
  filter:saturate(1.06) contrast(1.04);
}

.cb-featured-cinema-first .cb-featured-card:hover strong,
.cb-featured-cinema-first .cb-featured-card:focus-visible strong{
  color:#fff7ec;
}

/* Le CTA contact n’est plus un bloc sombre collé au footer */
.cb-reportages-page .cb-below-cinema-contact{
  background:#efe4d5 !important;
  color:#211c17 !important;
  padding-top:clamp(72px,7vw,112px) !important;
  padding-bottom:clamp(72px,7vw,112px) !important;
}

.cb-reportages-page .cb-below-cinema-contact::before{
  background:
    radial-gradient(circle at 18% 8%, rgba(180,143,83,.18), transparent 30%),
    radial-gradient(circle at 86% 24%, rgba(33,28,23,.07), transparent 34%) !important;
}

.cb-reportages-page .cb-below-cinema-contact h2{
  color:#211c17 !important;
}

.cb-reportages-page .cb-below-cinema-contact p:not(.cb-below-cinema__eyebrow){
  color:#706458 !important;
}

.cb-reportages-page .cb-below-cinema-contact a{
  color:#f7efe4 !important;
  background:#211c17 !important;
}

/* Encart SEO final juste avant le footer */
.cb-reportages-page .cb-reportages-seo-final{
  background:#f6efe5 !important;
  color:#211c17 !important;
  padding-top:clamp(70px,7vw,112px) !important;
  padding-bottom:clamp(70px,7vw,112px) !important;
  border-top:1px solid rgba(33,28,23,.08);
}

.cb-reportages-page .cb-reportages-seo-final::before{
  background:
    radial-gradient(circle at 20% 0%, rgba(180,143,83,.14), transparent 32%),
    radial-gradient(circle at 80% 12%, rgba(33,28,23,.05), transparent 30%) !important;
}

.cb-reportages-page .cb-reportages-seo-final h2{
  color:#211c17 !important;
}

.cb-reportages-page .cb-reportages-seo-final__intro{
  margin:22px 0 0;
  max-width:620px;
  color:#706458;
  font-size:clamp(16px,1.2vw,19px);
  line-height:1.75;
}

.cb-reportages-page .cb-reportages-seo-final .cb-below-cinema-seo__groups article{
  background:rgba(255,255,255,.48);
  border-color:rgba(33,28,23,.12);
  box-shadow:0 22px 70px rgba(33,28,23,.045);
}

.cb-reportages-page .cb-reportages-seo-final .cb-below-cinema-seo__groups a:hover,
.cb-reportages-page .cb-reportages-seo-final .cb-below-cinema-seo__groups a:focus-visible{
  background:#211c17;
  color:#f7efe4;
  border-color:#211c17;
}

/* Transition propre vers le footer réel partagé */
.cb-reportages-page .cb-reportages-seo-final + footer{
  margin-top:0 !important;
}

/* CB REPORTAGES SEO FLOW V1.2.9 — END */

/* CB REPORTAGES CTA GLOW SAFE V1.3.0 — START */

/*
  Micro-effet uniquement visuel.
  Ne touche pas au HTML.
  Objectif : attirer subtilement l’œil vers les actions du reportage affiché.
*/

.cb-featured-cinema-first .cb-featured-cinema-actions a{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.cb-featured-cinema-first .cb-featured-cinema-actions a::after{
  content:"";
  position:absolute;
  top:-45%;
  bottom:-45%;
  left:-80%;
  width:48%;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(
      105deg,
      transparent 0%,
      rgba(198,161,94,0) 18%,
      rgba(198,161,94,.18) 42%,
      rgba(255,247,236,.30) 50%,
      rgba(198,161,94,.14) 58%,
      transparent 100%
    );
  transform:translateX(-160%) skewX(-18deg);
  opacity:0;
  animation:cbReportagesCtaGlowSafe 8.5s ease-in-out 1.1s infinite;
}

.cb-featured-cinema-first .cb-featured-cinema-actions a:nth-child(2)::after{
  animation-delay:1.32s;
}

@keyframes cbReportagesCtaGlowSafe{
  0%{
    transform:translateX(-160%) skewX(-18deg);
    opacity:0;
  }

  9%{
    opacity:.18;
  }

  18%{
    transform:translateX(310%) skewX(-18deg);
    opacity:.30;
  }

  25%{
    opacity:0;
  }

  100%{
    transform:translateX(310%) skewX(-18deg);
    opacity:0;
  }
}

.cb-featured-cinema-first .cb-featured-cinema-actions a:hover,
.cb-featured-cinema-first .cb-featured-cinema-actions a:focus-visible{
  border-color:rgba(198,161,94,.72) !important;
  box-shadow:
    0 18px 54px rgba(0,0,0,.28),
    0 0 28px rgba(198,161,94,.16) !important;
}

@media (prefers-reduced-motion: reduce){
  .cb-featured-cinema-first .cb-featured-cinema-actions a::after{
    animation:none !important;
    opacity:0 !important;
  }
}

/* CB REPORTAGES CTA GLOW SAFE V1.3.0 — END */

/* CB REPORTAGES MOBILE NAV V1.3.5 — START */

/*
  Navigation page cinéma :
  - header absent sur le premier écran ;
  - header affiché uniquement quand on remonte ;
  - header masqué quand on descend ;
  - mobile : barre fixe basse avec "Vérifier ma date" ;
  - harmonisation du premier écran mobile.
*/

/* Sécurité : le skip link ne doit jamais polluer visuellement. */
.cb-reportages-page .cb-skip-link{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.cb-reportages-page .cb-skip-link:focus{
  position:fixed !important;
  top:14px !important;
  left:14px !important;
  z-index:99999 !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  clip:auto !important;
  clip-path:none !important;
  padding:12px 16px !important;
  border-radius:999px !important;
  background:#f7efe4 !important;
  color:#211c17 !important;
  text-decoration:none !important;
  font-weight:900 !important;
}

/* Desktop : header partagé compact, centré, sans bug de taille. */


/* Mobile : header haut compact, non décalé, visible seulement quand on remonte. */
@media (max-width:980px){
  body.cb-reportages-page{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }
}

/* Barre mobile basse */
.cb-reportages-mobile-bar{
  display:none;
}

@media (max-width:980px){
  .cb-reportages-mobile-bar{
    position:fixed;
    left:10px;
    right:10px;
    bottom:max(10px, env(safe-area-inset-bottom));
    z-index:1200;
    height:58px;
    padding:7px;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:7px;
    border-radius:999px;
    background:rgba(32,27,22,.82);
    border:1px solid rgba(247,239,228,.18);
    box-shadow:0 18px 54px rgba(0,0,0,.28);
    backdrop-filter:blur(18px) saturate(1.08);
    -webkit-backdrop-filter:blur(18px) saturate(1.08);
  }

  .cb-reportages-mobile-bar a{
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    text-decoration:none;
    min-width:0;
    font-size:11px;
    line-height:1;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    white-space:nowrap;
  }

  .cb-reportages-mobile-bar__link{
    color:rgba(247,239,228,.78);
    border:1px solid rgba(247,239,228,.12);
    background:rgba(247,239,228,.06);
  }

  .cb-reportages-mobile-bar__cta{
    color:#211c17;
    background:#f7efe4;
    border:1px solid rgba(247,239,228,.75);
  }
}

/* Premier écran mobile harmonisé */
@media (max-width:720px){
  .cb-featured-cinema-first{
    min-height:100svh !important;
    height:auto !important;
    max-height:none !important;
    padding:16px 0 calc(92px + env(safe-area-inset-bottom)) !important;
    overflow:hidden !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-top{
    position:relative !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    width:calc(100% - 24px) !important;
    margin:0 auto 18px !important;
    padding:0 !important;
    z-index:20 !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    justify-content:stretch !important;
  }

  .cb-featured-cinema-actions::before{
    grid-column:1 / -1 !important;
    text-align:left !important;
    margin:0 0 2px !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-actions a{
    min-height:42px !important;
    padding:0 10px !important;
    font-size:10px !important;
    letter-spacing:.10em !important;
    text-align:center !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-body{
    width:calc(100% - 24px) !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 auto !important;
    display:flex !important;
    flex-direction:column !important;
  }

  .cb-featured-cinema-first .cb-featured-copy{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    order:1 !important;
    max-width:none !important;
    width:100% !important;
    padding:clamp(36px,12vh,72px) 0 18px !important;
  }

  .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-featured-cinema-first .cb-featured-copy h3{
    max-width:9.5ch !important;
    font-size:clamp(48px,16vw,72px) !important;
    line-height:.86 !important;
    letter-spacing:-.065em !important;
  }

  .cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
    max-width:32ch !important;
    margin-top:12px !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }

  .cb-featured-cinema-first .cb-featured-meta,
  .cb-featured-cinema-first .cb-featured-tags{
    gap:7px !important;
    margin-top:12px !important;
  }

  .cb-featured-cinema-first .cb-featured-meta span,
  .cb-featured-cinema-first .cb-featured-tags span{
    min-height:30px !important;
    padding:0 10px !important;
    font-size:9px !important;
    letter-spacing:.10em !important;
  }

  .cb-featured-cinema-first .cb-featured-list{
    position:relative !important;
    order:2 !important;
    left:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100% !important;
    display:flex !important;
    flex-direction:row !important;
    gap:10px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:2px 2px 10px !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }

  .cb-featured-cinema-first .cb-featured-list::-webkit-scrollbar{
    display:none !important;
  }

  .cb-featured-cinema-first .cb-featured-card{
    flex:0 0 min(82vw, 320px) !important;
    scroll-snap-align:start !important;
    min-height:86px !important;
    grid-template-columns:64px minmax(0,1fr) !important;
    gap:12px !important;
    padding:10px !important;
    border-radius:22px !important;
  }

  .cb-featured-cinema-first .cb-featured-card img{
    width:64px !important;
    height:64px !important;
    border-radius:16px !important;
  }

  .cb-featured-cinema-first .cb-featured-card strong{
    font-size:20px !important;
    line-height:.95 !important;
  }

  .cb-featured-cinema-first .cb-featured-card small,
  .cb-featured-cinema-first .cb-featured-card span{
    font-size:11px !important;
  }

  .cb-cinema-signature{
    right:16px !important;
    bottom:calc(74px + env(safe-area-inset-bottom)) !important;
    left:auto !important;
  }

  .cb-cinema-signature strong{
    font-size:21px !important;
  }

  .cb-cinema-signature span{
    font-size:13px !important;
  }
}

/* CB REPORTAGES MOBILE NAV V1.3.5 — END */

/* CB REPORTAGES MOBILE HARMONY V1.3.6 — START */

/*
  Mobile uniquement :
  - empêche le noir du premier écran de déborder sur la section suivante ;
  - masque l’ancienne intro sombre mobile si elle subsiste ;
  - harmonise le premier écran cinéma ;
  - garde le footer intact.
*/

@media (max-width: 720px){

  html,
  body.cb-reportages-page{
    overflow-x:hidden !important;
    background:#f6efe5 !important;
  }

  body.cb-reportages-page main{
    background:#f6efe5 !important;
  }

  /*
    Le premier écran reste cinéma, mais il doit se terminer proprement.
  */
  .cb-reportages-page .cb-featured-cinema-first{
    position:relative !important;
    z-index:1 !important;
    contain:paint !important;
    overflow:hidden !important;
    min-height:100svh !important;
    height:auto !important;
    max-height:none !important;
    margin:0 !important;
    padding:14px 0 calc(86px + env(safe-area-inset-bottom)) !important;
    background:#100d0a !important;
    border-radius:0 0 24px 24px !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-bg,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-shade{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-height:none !important;
    border-radius:0 0 24px 24px !important;
    overflow:hidden !important;
  }

  /*
    Correction du bug visible :
    cet ancien bloc intro sombre ne doit pas apparaître sur mobile,
    car la vraie section claire "Des mariages racontés..." arrive juste après.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-cinema-editorial-intro,
  .cb-reportages-page .cb-featured-cinema-first .cb-reports-intro,
  .cb-reportages-page .cb-featured-cinema-first .cb-report-proof,
  .cb-reportages-page .cb-featured-cinema-first + .cb-cinema-editorial-intro{
    display:none !important;
  }

  /*
    La section claire suivante reprend immédiatement le relais.
  */
  .cb-reportages-page .cb-featured-cinema-first + .cb-below-cinema,
  .cb-reportages-page .cb-below-cinema-opening{
    position:relative !important;
    z-index:5 !important;
    margin-top:0 !important;
    background:#f6efe5 !important;
    color:#211c17 !important;
    border-radius:0 !important;
    overflow:visible !important;
  }

  .cb-reportages-page .cb-below-cinema-opening::before,
  .cb-reportages-page .cb-below-cinema::before{
    pointer-events:none !important;
  }

  /*
    Premier écran mobile : lecture plus propre.
  */
  .cb-featured-cinema-first .cb-featured-cinema-top{
    position:relative !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    z-index:20 !important;
    width:calc(100% - 22px) !important;
    margin:0 auto 16px !important;
    padding:0 !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-actions{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    align-items:stretch !important;
  }

  .cb-featured-cinema-actions::before{
    content:"Ce mariage" !important;
    grid-column:1 / -1 !important;
    margin:0 0 2px !important;
    text-align:left !important;
    color:rgba(247,239,228,.62) !important;
    font-size:9px !important;
    line-height:1 !important;
    letter-spacing:.16em !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-actions a{
    min-height:42px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:9.5px !important;
    line-height:1.05 !important;
    letter-spacing:.095em !important;
    text-align:center !important;
    white-space:normal !important;
  }

  .cb-featured-cinema-first .cb-featured-cinema-body{
    position:relative !important;
    z-index:10 !important;
    width:calc(100% - 22px) !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 auto !important;
    display:flex !important;
    flex-direction:column !important;
  }

  .cb-featured-cinema-first .cb-featured-copy{
    position:relative !important;
    order:1 !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    max-width:none !important;
    width:100% !important;
    padding:clamp(36px,10vh,64px) 0 18px !important;
  }

  .cb-featured-cinema-first .cb-featured-copy .cb-reports-kicker{
    margin-bottom:8px !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
  }

  .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-featured-cinema-first .cb-featured-copy h3{
    max-width:9.5ch !important;
    font-size:clamp(46px,15vw,70px) !important;
    line-height:.86 !important;
    letter-spacing:-.065em !important;
  }

  .cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
    max-width:32ch !important;
    margin-top:12px !important;
    color:rgba(247,239,228,.78) !important;
    font-size:14px !important;
    line-height:1.52 !important;
  }

  .cb-featured-cinema-first .cb-featured-meta,
  .cb-featured-cinema-first .cb-featured-tags{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:7px !important;
    margin-top:12px !important;
  }

  .cb-featured-cinema-first .cb-featured-meta span,
  .cb-featured-cinema-first .cb-featured-tags span{
    min-height:29px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:8.5px !important;
    letter-spacing:.095em !important;
  }

  .cb-featured-cinema-first .cb-featured-list{
    position:relative !important;
    order:2 !important;
    z-index:12 !important;
    left:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100% !important;
    display:flex !important;
    flex-direction:row !important;
    gap:10px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:2px 2px 10px !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
  }

  .cb-featured-cinema-first .cb-featured-list::-webkit-scrollbar{
    display:none !important;
  }

  .cb-featured-cinema-first .cb-featured-card{
    flex:0 0 min(82vw, 318px) !important;
    scroll-snap-align:start !important;
    min-height:84px !important;
    grid-template-columns:62px minmax(0,1fr) !important;
    gap:12px !important;
    padding:10px !important;
    border-radius:22px !important;
  }

  .cb-featured-cinema-first .cb-featured-card img{
    width:62px !important;
    height:62px !important;
    border-radius:15px !important;
  }

  .cb-featured-cinema-first .cb-featured-card strong{
    font-size:19px !important;
    line-height:.95 !important;
  }

  .cb-featured-cinema-first .cb-featured-card small,
  .cb-featured-cinema-first .cb-featured-card span{
    font-size:10.5px !important;
  }

  .cb-cinema-signature{
    position:absolute !important;
    z-index:18 !important;
    right:16px !important;
    bottom:calc(70px + env(safe-area-inset-bottom)) !important;
    left:auto !important;
  }

  .cb-cinema-signature strong{
    font-size:20px !important;
  }

  .cb-cinema-signature span{
    font-size:13px !important;
  }

  /*
    Les sections suivantes doivent toutes repartir sur fond clair/sombre maîtrisé,
    jamais sur le fond noir du hero.
  */
  .cb-reportages-page .cb-below-cinema-opening,
  .cb-reportages-page .cb-below-cinema-all,
  .cb-reportages-page .cb-reportages-seo-final{
    background:#f6efe5 !important;
  }

  .cb-reportages-page .cb-below-cinema-approach,
  .cb-reportages-page .cb-below-cinema-contact{
    background:#211c17 !important;
  }
}

/* Très petits écrans */
@media (max-width:380px){
  .cb-featured-cinema-first .cb-featured-cinema-actions a{
    font-size:8.8px !important;
    letter-spacing:.075em !important;
  }

  .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-featured-cinema-first .cb-featured-copy h3{
    font-size:clamp(42px,14vw,62px) !important;
  }

  .cb-featured-cinema-first .cb-featured-card{
    flex-basis:84vw !important;
  }
}

/* CB REPORTAGES MOBILE HARMONY V1.3.6 — END */

/* CB REPORTAGES MOBILE SELECTOR V1.3.7 — START */

/*
  Mobile uniquement :
  - on retire les tags du récit actif pour respirer ;
  - les 6 reportages deviennent de vrais boutons compacts visibles ;
  - aucun impact desktop.
*/

@media (max-width:720px){

  /*
    Lecture plus claire du récit actif :
    on garde le lieu, le titre et le texte,
    mais on retire les tags qui chargent trop le premier écran.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-meta,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-tags{
    display:none !important;
  }

  /*
    Le titre et le texte gagnent un peu d’air.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy{
    padding-bottom:18px !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
    max-width:30ch !important;
    font-size:14px !important;
    line-height:1.48 !important;
  }

  /*
    Les 6 reportages : grille compacte 2 colonnes.
    Objectif : montrer immédiatement qu’il y a plusieurs journées complètes.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-list{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:8px !important;
    width:100% !important;
    overflow:visible !important;
    padding:0 !important;
    scroll-snap-type:none !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card{
    width:auto !important;
    min-width:0 !important;
    flex:none !important;
    min-height:66px !important;
    height:66px !important;
    padding:7px !important;
    display:grid !important;
    grid-template-columns:46px minmax(0,1fr) !important;
    gap:8px !important;
    align-items:center !important;
    border-radius:18px !important;
    background:rgba(247,239,228,.10) !important;
    border:1px solid rgba(247,239,228,.13) !important;
    box-shadow:0 12px 34px rgba(0,0,0,.16) !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card:hover,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card:focus-visible,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card.is-active,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card[aria-selected="true"]{
    transform:none !important;
    border-color:rgba(198,161,94,.88) !important;
    background:linear-gradient(135deg,rgba(198,161,94,.24),rgba(247,239,228,.10)) !important;
    box-shadow:
      0 14px 42px rgba(0,0,0,.22),
      0 0 0 1px rgba(198,161,94,.18) inset !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card img{
    width:46px !important;
    height:46px !important;
    border-radius:13px !important;
    object-fit:cover !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card div,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card span,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card strong,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card small{
    min-width:0 !important;
  }

  /*
    Numéro discret en haut, prénom lisible, lieu masqué pour ne pas alourdir.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card span{
    display:block !important;
    margin:0 0 3px !important;
    color:#c6a15e !important;
    font-size:8px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.14em !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card strong{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    color:#f7efe4 !important;
    font-size:14px !important;
    line-height:1.02 !important;
    letter-spacing:-.035em !important;
    white-space:normal !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card small,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card em,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card p{
    display:none !important;
  }

  /*
    Sur petits mobiles, on garde la grille mais on réduit encore légèrement.
  */
  @media (max-width:380px){
    .cb-reportages-page .cb-featured-cinema-first .cb-featured-list{
      gap:7px !important;
    }

    .cb-reportages-page .cb-featured-cinema-first .cb-featured-card{
      height:62px !important;
      min-height:62px !important;
      grid-template-columns:42px minmax(0,1fr) !important;
      gap:7px !important;
      padding:6px !important;
      border-radius:16px !important;
    }

    .cb-reportages-page .cb-featured-cinema-first .cb-featured-card img{
      width:42px !important;
      height:42px !important;
      border-radius:12px !important;
    }

    .cb-reportages-page .cb-featured-cinema-first .cb-featured-card strong{
      font-size:13px !important;
    }
  }
}

/* CB REPORTAGES MOBILE SELECTOR V1.3.7 — END */

/* CB REPORTAGES MOBILE CINEMA LAYOUT V1.3.8 — START */

/*
  Mobile uniquement :
  - CTA principaux en haut conservés ;
  - récit actif plus lisible ;
  - les 6 reportages deviennent une navigation basse ;
  - signature toujours visible ;
  - barre "Vérifier ma date" conservée.
*/

@media (max-width:720px){

  .cb-reportages-page .cb-featured-cinema-first{
    position:relative !important;
    min-height:100svh !important;
    height:100svh !important;
    max-height:none !important;
    overflow:hidden !important;
    padding:0 !important;
    border-radius:0 0 24px 24px !important;
    background:#100d0a !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-bg,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-shade{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    border-radius:0 0 24px 24px !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-shade{
    background:
      linear-gradient(180deg, rgba(8,6,5,.78) 0%, rgba(8,6,5,.28) 26%, rgba(8,6,5,.18) 48%, rgba(8,6,5,.78) 100%),
      linear-gradient(90deg, rgba(8,6,5,.50) 0%, rgba(8,6,5,.16) 56%, rgba(8,6,5,.44) 100%) !important;
  }

  /*
    CTA haut : on garde la logique, mais on compacte.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-top{
    position:absolute !important;
    z-index:30 !important;
    top:12px !important;
    left:10px !important;
    right:10px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
  }

  .cb-reportages-page .cb-featured-cinema-actions::before{
    content:"Ce mariage" !important;
    grid-column:1 / -1 !important;
    margin:0 0 2px !important;
    text-align:left !important;
    color:rgba(247,239,228,.64) !important;
    font-size:9px !important;
    line-height:1 !important;
    letter-spacing:.16em !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-actions a{
    min-height:40px !important;
    padding:0 8px !important;
    border-radius:999px !important;
    font-size:9px !important;
    line-height:1.05 !important;
    letter-spacing:.085em !important;
    text-align:center !important;
    white-space:normal !important;
  }

  /*
    Corps du hero : on libère l’image.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-cinema-body{
    position:relative !important;
    z-index:10 !important;
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    margin:0 !important;
    display:block !important;
  }

  /*
    Texte principal : plus haut, pour laisser le bas aux 6 boutons.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy{
    position:absolute !important;
    z-index:18 !important;
    left:12px !important;
    right:12px !important;
    top:clamp(118px, 19vh, 150px) !important;
    bottom:auto !important;
    width:auto !important;
    max-width:none !important;
    padding:0 !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy .cb-reports-kicker{
    margin:0 0 8px !important;
    color:rgba(247,239,228,.92) !important;
    font-size:8.5px !important;
    line-height:1 !important;
    letter-spacing:.15em !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy h3{
    max-width:8.7ch !important;
    margin:0 !important;
    font-size:clamp(44px, 14vw, 66px) !important;
    line-height:.84 !important;
    letter-spacing:-.065em !important;
    text-shadow:0 18px 46px rgba(0,0,0,.44) !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
    max-width:31ch !important;
    margin:12px 0 0 !important;
    color:rgba(247,239,228,.84) !important;
    font-size:13.5px !important;
    line-height:1.45 !important;
    text-shadow:0 12px 30px rgba(0,0,0,.42) !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-meta,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-tags{
    display:none !important;
  }

  /*
    Les 6 reportages : navigation basse, pour ne plus masquer le cœur de l’image.
  */
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-list{
    position:absolute !important;
    z-index:22 !important;
    left:10px !important;
    right:10px !important;
    top:auto !important;
    bottom:calc(104px + env(safe-area-inset-bottom)) !important;
    width:auto !important;
    max-height:none !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:7px !important;
    overflow:visible !important;
    padding:0 !important;
    scroll-snap-type:none !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card{
    width:auto !important;
    min-width:0 !important;
    flex:none !important;
    height:58px !important;
    min-height:58px !important;
    padding:6px !important;
    display:grid !important;
    grid-template-columns:40px minmax(0,1fr) !important;
    gap:7px !important;
    align-items:center !important;
    border-radius:16px !important;
    background:rgba(247,239,228,.105) !important;
    border:1px solid rgba(247,239,228,.14) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.18) !important;
    backdrop-filter:blur(12px) saturate(1.04) !important;
    -webkit-backdrop-filter:blur(12px) saturate(1.04) !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card:hover,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card:focus-visible,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card.is-active,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card[aria-selected="true"]{
    transform:none !important;
    border-color:rgba(198,161,94,.88) !important;
    background:linear-gradient(135deg,rgba(198,161,94,.22),rgba(247,239,228,.10)) !important;
    box-shadow:
      0 14px 42px rgba(0,0,0,.22),
      0 0 0 1px rgba(198,161,94,.18) inset !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card img{
    width:40px !important;
    height:40px !important;
    border-radius:11px !important;
    object-fit:cover !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card span{
    display:block !important;
    margin:0 0 2px !important;
    color:#c6a15e !important;
    font-size:7.5px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.12em !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card strong{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    color:#f7efe4 !important;
    font-size:12.5px !important;
    line-height:1 !important;
    letter-spacing:-.03em !important;
    white-space:normal !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card small,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card em,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card p{
    display:none !important;
  }

  /*
    Signature : toujours visible, entre les 6 boutons et la barre basse.
  */
  .cb-reportages-page .cb-cinema-signature{
    position:absolute !important;
    z-index:25 !important;
    right:16px !important;
    left:auto !important;
    bottom:calc(68px + env(safe-area-inset-bottom)) !important;
    display:inline-flex !important;
    color:rgba(247,239,228,.88) !important;
    text-shadow:0 14px 34px rgba(0,0,0,.56) !important;
  }

  .cb-reportages-page .cb-cinema-signature span{
    font-size:12px !important;
  }

  .cb-reportages-page .cb-cinema-signature strong{
    font-size:19px !important;
  }
}

/*
  Très petits mobiles : on réduit encore pour éviter que les 6 boutons
  mordent trop haut sur l’image.
*/
@media (max-width:380px){
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy{
    top:clamp(108px, 18vh, 136px) !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy h2,
  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy h3{
    font-size:clamp(40px, 13.4vw, 58px) !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-copy > p:not(.cb-reports-kicker){
    font-size:12.8px !important;
    line-height:1.42 !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-list{
    bottom:calc(100px + env(safe-area-inset-bottom)) !important;
    gap:6px !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card{
    height:54px !important;
    min-height:54px !important;
    grid-template-columns:36px minmax(0,1fr) !important;
    gap:6px !important;
    padding:6px !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card img{
    width:36px !important;
    height:36px !important;
    border-radius:10px !important;
  }

  .cb-reportages-page .cb-featured-cinema-first .cb-featured-card strong{
    font-size:11.5px !important;
  }

  .cb-reportages-page .cb-cinema-signature strong{
    font-size:17px !important;
  }
}

/* CB REPORTAGES MOBILE CINEMA LAYOUT V1.3.8 — END */

/* CB REPORTAGES IMAGE FOCUS V1.3.9 — START */

/*
  Point d’ancrage image.
  Chaque reportage peut définir :
  - focus: desktop
  - mobileFocus: mobile
  Exemple : "mobileFocus": "82% 50%"
*/

.cb-reportages-page .cb-featured-cinema-bg img{
  object-position:var(--cb-featured-focus, center center) !important;
  transition:object-position .28s ease, filter .28s ease !important;
}

@media (max-width:720px){
  .cb-reportages-page .cb-featured-cinema-bg img{
    object-position:var(--cb-featured-mobile-focus, var(--cb-featured-focus, center center)) !important;
  }
}

/* CB REPORTAGES IMAGE FOCUS V1.3.9 — END */

/* CB REPORTAGES IMAGE FOCUS + ZOOM V1.4.0 — START */

/*
  Réglage par reportage :
  focus / mobileFocus = point d’ancrage de l’image.
  zoom / mobileZoom = niveau de zoom.
*/

.cb-reportages-page .cb-featured-cinema-bg{
  overflow:hidden !important;
}

.cb-reportages-page .cb-featured-cinema-bg img{
  object-position:var(--cb-featured-focus, center center) !important;
  transform:scale(var(--cb-featured-zoom, 1)) !important;
  transform-origin:var(--cb-featured-focus, center center) !important;
  transition:
    object-position .32s ease,
    transform .32s ease,
    transform-origin .32s ease,
    filter .32s ease !important;
  will-change:object-position, transform;
}

@media (max-width:720px){
  .cb-reportages-page .cb-featured-cinema-bg img{
    object-position:var(--cb-featured-mobile-focus, var(--cb-featured-focus, center center)) !important;
    transform:scale(var(--cb-featured-mobile-zoom, var(--cb-featured-zoom, 1))) !important;
    transform-origin:var(--cb-featured-mobile-focus, var(--cb-featured-focus, center center)) !important;
  }
}

@media (prefers-reduced-motion: reduce){
  .cb-reportages-page .cb-featured-cinema-bg img{
    transition:none !important;
  }
}

/* Desktop : header visible uniquement quand on remonte après le premier écran. */


/* Mobile : le header haut est désactivé entièrement sur cette page. */


/* Barre mobile basse : cachée par défaut. */
.cb-reportages-mobile-bar{
  display:none !important;
}

/* Mobile : visible uniquement à partir de la deuxième section. */
@media (max-width:980px){
  body.cb-reportages-page{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-bar{
    position:fixed !important;
    left:10px !important;
    right:10px !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
    z-index:1200 !important;
    height:58px !important;
    padding:7px !important;
    display:grid !important;
    grid-template-columns:.72fr 1.28fr !important;
    gap:7px !important;
    border-radius:999px !important;
    background:rgba(32,27,22,.82) !important;
    border:1px solid rgba(247,239,228,.18) !important;
    box-shadow:0 18px 54px rgba(0,0,0,.28) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-bar{
    display:none !important;
  }

  .cb-reportages-mobile-bar a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
    text-decoration:none !important;
    min-width:0 !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
  }

  .cb-reportages-mobile-bar__link{
    color:rgba(247,239,228,.78) !important;
    border:1px solid rgba(247,239,228,.12) !important;
    background:rgba(247,239,228,.06) !important;
  }

  .cb-reportages-mobile-bar__cta{
    color:#211c17 !important;
    background:#f7efe4 !important;
    border:1px solid rgba(247,239,228,.75) !important;
  }
}

/* Desktop : visible quand on remonte après le premier écran. */


/* Mobile : pas de header haut sur cette page. */


/* Barre mobile basse : uniquement après le premier écran. */
.cb-reportages-mobile-bar{
  display:none !important;
}

@media (max-width:980px){
  body.cb-reportages-page{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-bar{
    position:fixed !important;
    left:10px !important;
    right:10px !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
    z-index:1200 !important;
    height:58px !important;
    padding:7px !important;
    display:grid !important;
    grid-template-columns:.72fr 1.28fr !important;
    gap:7px !important;
    border-radius:999px !important;
    background:rgba(32,27,22,.82) !important;
    border:1px solid rgba(247,239,228,.18) !important;
    box-shadow:0 18px 54px rgba(0,0,0,.28) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-bar{
    display:none !important;
  }

  .cb-reportages-mobile-bar a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
    text-decoration:none !important;
    min-width:0 !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
  }

  .cb-reportages-mobile-bar__link{
    color:rgba(247,239,228,.78) !important;
    border:1px solid rgba(247,239,228,.12) !important;
    background:rgba(247,239,228,.06) !important;
  }

  .cb-reportages-mobile-bar__cta{
    color:#211c17 !important;
    background:#f7efe4 !important;
    border:1px solid rgba(247,239,228,.75) !important;
  }
}

/* CB REPORTAGES REAL SHARED HEADER V1.4.3 — END */

/* CB REPORTAGES FONTS + MOBILE SHARED HEADER V1.4.4 — START */

/*
  Le header reste le vrai header partagé.
  On ne le redessine pas.
  On réactive seulement son apparition mobile comme sur desktop.
*/

/* Mobile : on annule l'ancien display:none du header haut. */


/*
  Mobile : on garde le comportement partagé, mais on évite que le header prenne
  toute la hauteur si une police ou une baseline charge différemment.
  Ce n'est pas un redesign, seulement une sécurité de conteneur.
*/


/* Barre basse inchangée : visible uniquement après le premier écran. */
@media (max-width:980px){
  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-bar{
    display:none !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-bar{
    display:grid !important;
  }
}

/* CB REPORTAGES FONTS + MOBILE SHARED HEADER V1.4.4 — END */

/* CB REPORTAGES SHARED HEADER FONTS V1.4.5 — START */

/*
  Le header est celui de la home.
  La page ne force plus sa typographie.
  Elle contrôle uniquement son apparition.
*/

body.cb-reportages-page #cbReportagesSharedHeader{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .22s ease, visibility .22s ease !important;
}

body.cb-reportages-page.cb-cinema-at-top #cbReportagesSharedHeader,
body.cb-reportages-page.cb-reportages-header-hidden #cbReportagesSharedHeader{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

body.cb-reportages-page.cb-reportages-header-visible:not(.cb-cinema-at-top) #cbReportagesSharedHeader{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Barre mobile basse uniquement après le premier écran. */
.cb-reportages-mobile-bar{
  display:none !important;
}

@media (max-width:980px){
  body.cb-reportages-page{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-bar{
    display:grid !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-bar{
    display:none !important;
  }
}

/* CB REPORTAGES SHARED HEADER FONTS V1.4.5 — END */

/* CB REPORTAGES BURGER FIX V1.4.6 — START */

/*
  Le header reste le vrai header partagé.
  Ici, on ajoute seulement un fallback d’ouverture du burger sur mobile.
*/

@media (max-width:980px){

  body.cb-reportages-page.cb-reportages-menu-open{
    overflow:hidden !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
    z-index:1300 !important;
  }

  /*
    Fallback si le JS partagé de la home n’est pas présent :
    on affiche la navigation du header en panneau mobile.
    Si le CSS partagé gère déjà le menu, ces règles restent simplement une sécurité.
  */
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation{
    display:flex !important;
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    top:calc(max(10px, env(safe-area-inset-top)) + 66px) !important;
    z-index:1299 !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:12px !important;
    border-radius:28px !important;
    background:rgba(32,27,22,.94) !important;
    border:1px solid rgba(247,239,228,.16) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.36) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation a{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:46px !important;
    padding:0 14px !important;
    border-radius:18px !important;
    color:#f7efe4 !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:850 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(247,239,228,.08) !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation a:last-child{
    border-bottom:0 !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a:hover,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a:focus-visible{
    background:rgba(247,239,228,.08) !important;
  }

  /*
    La barre basse ne doit pas rester devant le menu ouvert.
  */
  body.cb-reportages-page.cb-reportages-menu-open .cb-reportages-mobile-bar{
    display:none !important;
  }

  /*
    Overlay discret derrière le menu.
  */
  body.cb-reportages-page.cb-reportages-menu-open::after{
    content:"";
    position:fixed;
    inset:0;
    z-index:1200;
    background:rgba(10,8,6,.46);
    backdrop-filter:blur(2px);
    -webkit-backdrop-filter:blur(2px);
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader{
    z-index:1301 !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation{
    z-index:1301 !important;
  }
}

/* CB REPORTAGES BURGER FIX V1.4.6 — END */

/* CB REPORTAGES BURGER ALIGN V1.4.7 — START */

/*
  Correction mobile uniquement :
  le menu burger ouvert doit se caler sur le viewport,
  pas sur le bord droit du header.
*/

@media (max-width:980px){

  body.cb-reportages-page.cb-reportages-menu-open{
    overflow:hidden !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open::after{
    content:"";
    position:fixed !important;
    inset:0 !important;
    z-index:1200 !important;
    background:rgba(10,8,6,.46) !important;
    backdrop-filter:blur(2px) !important;
    -webkit-backdrop-filter:blur(2px) !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    z-index:1301 !important;
  }

  /*
    Tous les conteneurs possibles du menu mobile sont forcés
    à une largeur viewport propre.
  */
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .menu,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .menu-panel,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-menu-panel,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .mobile-menu,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-mobile-menu{
    display:flex !important;
    position:fixed !important;
    top:calc(max(10px, env(safe-area-inset-top)) + 66px) !important;
    left:12px !important;
    right:auto !important;
    bottom:auto !important;
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    min-width:0 !important;
    max-height:calc(100svh - 92px - env(safe-area-inset-bottom)) !important;
    overflow:auto !important;
    transform:none !important;
    translate:none !important;
    margin:0 !important;
    padding:12px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    border-radius:28px !important;
    background:rgba(32,27,22,.96) !important;
    border:1px solid rgba(247,239,228,.16) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.38) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
    z-index:1302 !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav *,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav *,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav *,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav *,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation *{
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav a,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation a{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:46px !important;
    padding:0 14px !important;
    margin:0 !important;
    border-radius:18px !important;
    color:#f7efe4 !important;
    background:transparent !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:850 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(247,239,228,.08) !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav a:last-child,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation a:last-child{
    border-bottom:0 !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a:hover,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav a:focus-visible{
    background:rgba(247,239,228,.08) !important;
  }

  /*
    Langues / contact si présents dans le menu.
  */
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .lang,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .languages,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-languages{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    gap:10px !important;
    margin:8px 0 !important;
  }

  /*
    La barre basse ne doit pas passer devant le menu.
  */
  body.cb-reportages-page.cb-reportages-menu-open .cb-reportages-mobile-bar{
    display:none !important;
  }
}

/* CB REPORTAGES BURGER ALIGN V1.4.7 — END */

/* CB REPORTAGES BURGER PANEL V1.4.8 — START */

/*
  Correction définitive mobile :
  on ne force plus le nav interne du header partagé.
  Le burger ouvre un panneau indépendant, aligné sur le viewport.
*/

@media (max-width:980px){

  body.cb-reportages-page.cb-reportages-menu-open{
    overflow:hidden !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open::after{
    content:"";
    position:fixed !important;
    inset:0 !important;
    z-index:1200 !important;
    background:rgba(10,8,6,.48) !important;
    backdrop-filter:blur(3px) !important;
    -webkit-backdrop-filter:blur(3px) !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader{
    z-index:1302 !important;
  }

  /*
    On masque le vrai nav interne du header quand le panneau indépendant est ouvert,
    pour éviter le décalage vu sur mobile.
  */
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .menu,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .menu-panel,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .mobile-menu,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-mobile-menu{
    display:none !important;
  }

  .cb-reportages-burger-panel{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    top:calc(max(10px, env(safe-area-inset-top)) + 66px) !important;
    width:auto !important;
    max-width:none !important;
    z-index:1301 !important;
    display:none !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:12px !important;
    border-radius:28px !important;
    background:rgba(32,27,22,.96) !important;
    border:1px solid rgba(247,239,228,.16) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.38) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
    overflow:auto !important;
    max-height:calc(100svh - 92px - env(safe-area-inset-bottom)) !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open .cb-reportages-burger-panel{
    display:flex !important;
  }

  .cb-reportages-burger-panel a{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:46px !important;
    width:100% !important;
    padding:0 14px !important;
    border-radius:18px !important;
    color:#f7efe4 !important;
    background:transparent !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:850 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(247,239,228,.08) !important;
    box-sizing:border-box !important;
  }

  .cb-reportages-burger-panel a:last-child{
    border-bottom:0 !important;
  }

  .cb-reportages-burger-panel a:hover,
  .cb-reportages-burger-panel a:focus-visible{
    background:rgba(247,239,228,.08) !important;
  }

  .cb-reportages-burger-panel__langs{
    display:flex !important;
    justify-content:center !important;
    gap:10px !important;
    padding:10px 0 8px !important;
  }

  .cb-reportages-burger-panel__langs a{
    width:auto !important;
    min-width:64px !important;
    justify-content:center !important;
    border:1px solid rgba(247,239,228,.12) !important;
    border-radius:999px !important;
  }

  .cb-reportages-burger-panel__contact{
    margin-top:8px !important;
    justify-content:center !important;
    background:#f7efe4 !important;
    color:#211c17 !important;
    border-bottom:0 !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open .cb-reportages-mobile-bar{
    display:none !important;
  }
}

/* CB REPORTAGES BURGER PANEL V1.4.8 — END */

/* CB REPORTAGES BURGER CLEAN V1.4.9 — START */

/*
  Mobile uniquement :
  - header fermé recalé dans le viewport ;
  - panneau burger indépendant, centré ;
  - suppression FR/EN ;
  - un seul Contact.
*/

@media (max-width:980px){

  body.cb-reportages-page #cbReportagesSharedHeader{
    position:fixed !important;
    top:max(10px, env(safe-area-inset-top)) !important;
    left:10px !important;
    right:10px !important;
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    min-width:0 !important;
    margin:0 !important;
    transform:translateY(-120%) !important;
    z-index:1302 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body.cb-reportages-page #cbReportagesSharedHeader > *{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  body.cb-reportages-page.cb-reportages-header-visible:not(.cb-cinema-at-top) #cbReportagesSharedHeader,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader{
    transform:translateY(0) !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open{
    overflow:hidden !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open::after{
    content:"";
    position:fixed !important;
    inset:0 !important;
    z-index:1200 !important;
    background:rgba(10,8,6,.48) !important;
    backdrop-filter:blur(3px) !important;
    -webkit-backdrop-filter:blur(3px) !important;
  }

  /*
    On masque le nav interne du header partagé.
    Le vrai panneau ouvert est indépendant et bien centré.
  */
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-main-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .site-nav,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .main-navigation,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .menu,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .menu-panel,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .mobile-menu,
  body.cb-reportages-page.cb-reportages-menu-open #cbReportagesSharedHeader .cb-mobile-menu{
    display:none !important;
  }

  .cb-reportages-burger-panel{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    top:calc(max(10px, env(safe-area-inset-top)) + 66px) !important;
    width:auto !important;
    max-width:none !important;
    z-index:1301 !important;
    display:none !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:12px !important;
    border-radius:28px !important;
    background:rgba(32,27,22,.96) !important;
    border:1px solid rgba(247,239,228,.16) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.38) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
    overflow:auto !important;
    max-height:calc(100svh - 92px - env(safe-area-inset-bottom)) !important;
    box-sizing:border-box !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open .cb-reportages-burger-panel{
    display:flex !important;
  }

  .cb-reportages-burger-panel a{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    min-height:48px !important;
    width:100% !important;
    padding:0 14px !important;
    border-radius:18px !important;
    color:#f7efe4 !important;
    background:transparent !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:850 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    border-bottom:1px solid rgba(247,239,228,.08) !important;
    box-sizing:border-box !important;
  }

  .cb-reportages-burger-panel a:last-child{
    border-bottom:0 !important;
  }

  .cb-reportages-burger-panel a:hover,
  .cb-reportages-burger-panel a:focus-visible{
    background:rgba(247,239,228,.08) !important;
  }

  .cb-reportages-burger-panel__contact{
    margin-top:8px !important;
    justify-content:center !important;
    background:#f7efe4 !important;
    color:#211c17 !important;
    border-bottom:0 !important;
  }

  .cb-reportages-burger-panel__langs,
  .cb-reportages-burger-panel a[data-menu-lang],
  .cb-reportages-burger-panel a[data-cb-menu-lang]{
    display:none !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open .cb-reportages-mobile-bar{
    display:none !important;
  }
}

/* CB REPORTAGES BURGER CLEAN V1.4.9 — END */

/* CB REPORTAGES MOBILE NO HEADER V1.5.0 — START */

/*
  Décision stable :
  sur mobile, pas de header haut et pas de burger sur /reportages-complets/.
  La navigation d’action mobile reste la barre basse, visible après le premier écran.
*/

/* Mobile : suppression complète du header et de tous les panneaux burger précédents. */
@media (max-width:980px){
  body.cb-reportages-page #cbReportagesSharedHeader,
  body.cb-reportages-page .cb-reportages-shared-header,
  body.cb-reportages-page .cb-reportages-burger-panel{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open{
    overflow:auto !important;
  }

  body.cb-reportages-page.cb-reportages-menu-open::after{
    display:none !important;
    content:none !important;
  }

  body.cb-reportages-page{
    padding-bottom:calc(78px + env(safe-area-inset-bottom)) !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-bar{
    display:none !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-bar{
    display:grid !important;
  }
}

/* Desktop : on ne change rien au comportement validé. */

/* CB REPORTAGES MOBILE NO HEADER V1.5.0 — END */

/* CB REPORTAGES MOBILE APP ACTIONS V1.5.1 — START */

/*
  Mobile :
  - pas de header haut ;
  - navigation basse façon app ;
  - visible uniquement après le premier écran ;
  - premier écran non modifié.
*/

@media (max-width:980px){
  body.cb-reportages-page #cbReportagesSharedHeader,
  body.cb-reportages-page .cb-reportages-shared-header,
  body.cb-reportages-page .cb-reportages-burger-panel{
    display:none !important;
  }

  body.cb-reportages-page{
    padding-bottom:calc(86px + env(safe-area-inset-bottom)) !important;
  }

  .cb-reportages-mobile-bar{
    display:none !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-appbar{
    position:fixed !important;
    left:10px !important;
    right:10px !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
    z-index:1200 !important;
    min-height:64px !important;
    padding:7px !important;
    display:grid !important;
    grid-template-columns:.74fr 1.52fr .74fr !important;
    gap:7px !important;
    border-radius:30px !important;
    background:rgba(32,27,22,.86) !important;
    border:1px solid rgba(247,239,228,.18) !important;
    box-shadow:0 18px 54px rgba(0,0,0,.30) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-appbar{
    display:none !important;
  }

  .cb-reportages-mobile-appbar a{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    min-width:0 !important;
    min-height:50px !important;
    border-radius:24px !important;
    text-decoration:none !important;
    line-height:1 !important;
  }

  .cb-reportages-mobile-appbar span{
    display:block !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }

  .cb-reportages-mobile-appbar strong{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:inherit !important;
    font-size:9.5px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.11em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
  }

  .cb-reportages-mobile-bar__item{
    color:rgba(247,239,228,.78) !important;
    border:1px solid rgba(247,239,228,.12) !important;
    background:rgba(247,239,228,.06) !important;
  }

  .cb-reportages-mobile-bar__cta{
    color:#211c17 !important;
    background:#f7efe4 !important;
    border:1px solid rgba(247,239,228,.78) !important;
    box-shadow:0 10px 28px rgba(247,239,228,.10) !important;
  }

  .cb-reportages-mobile-bar__cta span{
    color:#b48f53 !important;
    font-size:10px !important;
  }

  .cb-reportages-mobile-bar__cta strong{
    font-size:10.5px !important;
    letter-spacing:.12em !important;
  }

  .cb-reportages-mobile-appbar a:active{
    transform:scale(.985) !important;
  }
}

/* Nettoyage mobile de l'encart d'exploration : wording plus humain */
@media (max-width:720px){
  body.cb-reportages-page .cb-reportages-seo-final h3{
    font-size:clamp(28px,8vw,38px) !important;
  }
}

/* CB REPORTAGES MOBILE APP ACTIONS V1.5.1 — END */

/* CB REPORTAGES MOBILE APP HOME V1.5.2 — START */

/*
  Mobile app-like :
  - sortie claire vers la home ;
  - CTA central conservé ;
  - accès rapide aux récits ;
  - visible uniquement après le premier écran.
*/

@media (max-width:980px){
  body.cb-reportages-page #cbReportagesSharedHeader,
  body.cb-reportages-page .cb-reportages-shared-header,
  body.cb-reportages-page .cb-reportages-burger-panel{
    display:none !important;
  }

  body.cb-reportages-page{
    padding-bottom:calc(86px + env(safe-area-inset-bottom)) !important;
  }

  .cb-reportages-mobile-bar{
    display:none !important;
  }

  body.cb-reportages-page.cb-reportages-after-first .cb-reportages-mobile-appbar{
    position:fixed !important;
    left:10px !important;
    right:10px !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
    z-index:1200 !important;
    min-height:64px !important;
    padding:7px !important;
    display:grid !important;
    grid-template-columns:.74fr 1.52fr .74fr !important;
    gap:7px !important;
    border-radius:30px !important;
    background:rgba(32,27,22,.86) !important;
    border:1px solid rgba(247,239,228,.18) !important;
    box-shadow:0 18px 54px rgba(0,0,0,.30) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }

  body.cb-reportages-page.cb-cinema-at-top .cb-reportages-mobile-appbar{
    display:none !important;
  }

  .cb-reportages-mobile-appbar a{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    min-width:0 !important;
    min-height:50px !important;
    border-radius:24px !important;
    text-decoration:none !important;
    line-height:1 !important;
  }

  .cb-reportages-mobile-appbar span{
    display:block !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }

  .cb-reportages-mobile-appbar strong{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:inherit !important;
    font-size:9.5px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.11em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
  }

  .cb-reportages-mobile-bar__item{
    color:rgba(247,239,228,.78) !important;
    border:1px solid rgba(247,239,228,.12) !important;
    background:rgba(247,239,228,.06) !important;
  }

  .cb-reportages-mobile-bar__cta{
    color:#211c17 !important;
    background:#f7efe4 !important;
    border:1px solid rgba(247,239,228,.78) !important;
    box-shadow:0 10px 28px rgba(247,239,228,.10) !important;
  }

  .cb-reportages-mobile-bar__cta span{
    color:#b48f53 !important;
    font-size:10px !important;
  }

  .cb-reportages-mobile-bar__cta strong{
    font-size:10.5px !important;
    letter-spacing:.12em !important;
  }

  .cb-reportages-mobile-appbar a:active{
    transform:scale(.985) !important;
  }
}

/* CB REPORTAGES MOBILE APP HOME V1.5.2 — END */
