@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght,SOFT,WONK@9..144,600..900,40,0..1&family=Inter:wght@400;500;600;700;800;900&display=swap');

/* Refonte UX pages internes : plus de visuel, plus de preuve, moins d'empilement de boîtes. */
:root{
  --rb-paper:#fffaf2;
  --rb-cream:#f2ede4;
  --rb-ink:#1A1612;
  --rb-soft:#5C5248;
  --rb-muted:#8a7d73;
  --rb-accent:#C8501A;
  --rb-accent-dark:#a63f12;
  --rb-line:rgba(26,22,18,.12);
  --rb-dark:#10161b;
  --rb-max:1280px;
  --rb-title:'Fraunces', Georgia, serif;
  --rb-body:'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

body.rb-redesign-page,
body.page-blog-archive{
  background:
    radial-gradient(circle at 10% 2%, rgba(200,80,26,.11), transparent 30rem),
    radial-gradient(circle at 94% 8%, rgba(26,22,18,.07), transparent 34rem),
    linear-gradient(180deg,#fbf8f2 0%,var(--rb-cream) 58%,#eadfce 100%) !important;
}

body.rb-redesign-page #main-content,
body.page-blog-archive #main-content{overflow:hidden;}

/* Header mobile / desktop : garde le header propre et cohérent avec la home */
body.rb-redesign-page #site-header,
body.page-blog-archive #site-header{
  background:rgba(251,248,242,.96) !important;
  border-bottom:1px solid rgba(26,22,18,.10) !important;
}
body.rb-redesign-page .nav-links .is-active,
body.page-blog-archive .nav-links .is-active{
  background:transparent !important;
  color:#5C5248 !important;
  -webkit-text-fill-color:#5C5248 !important;
}

/* Hero premium avec visuel */
.rb-inner-hero{
  padding:clamp(3.5rem,6vw,5.8rem) 0 28px !important;
  position:relative;
}
.rb-inner-hero__grid{
  align-items:stretch !important;
  gap:clamp(2rem,4vw,4rem) !important;
}
.rb-inner-title{
  max-width:940px !important;
  color:#1A1612 !important;
  -webkit-text-fill-color:#1A1612 !important;
}
.rb-inner-lead{
  max-width:760px !important;
  color:#352d27 !important;
  -webkit-text-fill-color:#352d27 !important;
}
.rb-inner-panel{
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  gap:20px !important;
  min-height:420px !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#14191f !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 30px 80px rgba(26,22,18,.18) !important;
}
.rb-inner-panel::before{
  content:'';
  display:block;
  min-height:230px;
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.04),rgba(16,22,27,.78)),
    url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1200&q=78');
  background-size:cover;
  background-position:center;
}
.rb-theme-seo .rb-inner-panel::before{
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.04),rgba(16,22,27,.79)),
    url('https://images.unsplash.com/photo-1460925895917-afdab827c52f?auto=format&fit=crop&w=1200&q=78');
}
.rb-theme-web .rb-inner-panel::before{
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.04),rgba(16,22,27,.79)),
    url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?auto=format&fit=crop&w=1200&q=78');
}
.rb-theme-local .rb-inner-panel::before{
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.03),rgba(16,22,27,.80)),
    url('https://images.unsplash.com/photo-1449824913935-59a10b8d2000?auto=format&fit=crop&w=1200&q=78');
}
.rb-theme-about .rb-inner-panel::before{
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.03),rgba(16,22,27,.80)),
    url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=1200&q=78');
}
.rb-inner-panel h2,
.rb-inner-panel p,
.rb-inner-panel .rb-inner-actions{
  margin-left:28px !important;
  margin-right:28px !important;
}
.rb-inner-panel h2{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.rb-inner-panel p{
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
}
.rb-inner-actions{padding-bottom:28px;}

/* Bande preuve juste après le hero */
.rb-inner-proof-strip{
  width:min(calc(100% - 40px),var(--rb-max));
  margin:0 auto 22px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid var(--rb-line);
  background:rgba(255,250,242,.78);
}
.rb-inner-proof{
  padding:18px 22px;
  border-right:1px solid var(--rb-line);
  display:grid;
  gap:4px;
}
.rb-inner-proof:last-child{border-right:0;}
.rb-inner-proof strong{
  color:#1A1612 !important;
  -webkit-text-fill-color:#1A1612 !important;
  font:900 .78rem/1 var(--rb-body);
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rb-inner-proof span{
  color:#5C5248 !important;
  -webkit-text-fill-color:#5C5248 !important;
  font:600 .92rem/1.45 var(--rb-body);
}

/* Bande cas clients avec photos réelles d'ambiance, à remplacer par photos client terrain */
.rb-client-band{
  width:min(calc(100% - 40px),var(--rb-max));
  margin:0 auto 22px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(145deg,#151a1f,#0d1116);
  color:#fff;
  overflow:hidden;
}
.rb-client-band__head{
  padding:clamp(1.8rem,3vw,3rem);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:end;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.rb-client-band__head h2{
  margin:0;
  font-family:var(--rb-title);
  font-size:clamp(2.1rem,4vw,4rem);
  line-height:.98;
  letter-spacing:-.05em;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.rb-client-band__head p{
  margin:0;
  max-width:520px;
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
}
.rb-client-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.rb-client-card{
  display:grid;
  grid-template-rows:210px auto;
  min-width:0;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-decoration:none !important;
  border-right:1px solid rgba(255,255,255,.12);
}
.rb-client-card:last-child{border-right:0;}
.rb-client-shot{
  background:#111;
  background-size:cover;
  background-position:center;
  border-bottom:1px solid rgba(255,255,255,.12);
  position:relative;
}
.rb-client-shot::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(16,22,27,.02) 0%,rgba(16,22,27,.20) 38%,rgba(16,22,27,.84) 100%);
}
/* Pas de captures WordPress : photos métier temporaires, à remplacer par photos réelles client. */
.rb-shot-openlang{background-image:url('https://images.unsplash.com/photo-1517245386807-bb43f82c33c4?auto=format&fit=crop&w=1000&q=80');}
.rb-shot-fete{background-image:url('https://images.unsplash.com/photo-1531058020387-3be344556be6?auto=format&fit=crop&w=1000&q=80');}
.rb-shot-briques{background-image:url('https://images.unsplash.com/photo-1556742049-0cfed4f6a45d?auto=format&fit=crop&w=1000&q=80');}
.rb-client-body{padding:22px;}
.rb-client-body strong{
  display:block;
  margin-bottom:8px;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-family:var(--rb-title);
  font-size:1.55rem;
  line-height:1;
  letter-spacing:-.04em;
}
.rb-client-body span{
  display:block;
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
  font-size:.92rem;
  line-height:1.55;
}

/* Contenu : moins fouillis, moins de blancs, rythme plus éditorial */
.rb-inner-content{
  gap:22px !important;
  margin-bottom:76px !important;
}
.rb-inner-content > section,
.rb-inner-content > article,
.rb-inner-content > aside,
.rb-inner-content > div,
.rb-inner-content > p,
.rb-inner-content > ul,
.rb-inner-content > ol{
  background:rgba(255,250,242,.86) !important;
  border:1px solid var(--rb-line) !important;
  box-shadow:none !important;
}
.rb-inner-content > section:nth-child(even),
.rb-inner-content > article:nth-child(even),
.rb-inner-content > div:nth-child(even){
  background:rgba(246,239,229,.88) !important;
}
.rb-inner-content h2{
  max-width:980px !important;
  margin-bottom:18px !important;
  color:#1A1612 !important;
  -webkit-text-fill-color:#1A1612 !important;
}
.rb-inner-content h3{
  max-width:760px !important;
  color:#1A1612 !important;
  -webkit-text-fill-color:#1A1612 !important;
}
.rb-inner-content p,
.rb-inner-content li,
.rb-inner-content span{
  color:#4d453d !important;
  -webkit-text-fill-color:#4d453d !important;
}
.rb-inner-content .section-services,
.rb-inner-content .section-cta,
.rb-inner-content .section-cities{
  background:linear-gradient(145deg,#151a1f,#0d1116) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.12) !important;
}
.rb-inner-content .section-services h2,
.rb-inner-content .section-services h3,
.rb-inner-content .section-cta h2,
.rb-inner-content .section-cta h3,
.rb-inner-content .section-cities h2,
.rb-inner-content .section-cities h3,
.rb-inner-content .cta-h{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.rb-inner-content .section-services p,
.rb-inner-content .section-services li,
.rb-inner-content .section-services span,
.rb-inner-content .section-cta p,
.rb-inner-content .section-cta li,
.rb-inner-content .section-cta span,
.rb-inner-content .section-cities p,
.rb-inner-content .section-cities li,
.rb-inner-content .section-cities span{
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
}
.rb-inner-content .section-services a,
.rb-inner-content .section-cta a,
.rb-inner-content .section-cities a{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.rb-inner-content .section-services .button,
.rb-inner-content .section-services .cta-btn,
.rb-inner-content .section-cta .button,
.rb-inner-content .section-cta .cta-btn,
.rb-inner-content .section-cities .button,
.rb-inner-content .section-cities .cta-btn{
  background:#C8501A !important;
  border-color:#C8501A !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Blog : cartes éditoriales avec visuels */
body.page-blog-archive .section-block{
  overflow:hidden !important;
}
body.page-blog-archive .posts{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
body.page-blog-archive .post-row{
  grid-template-rows:150px auto auto !important;
  gap:16px !important;
  min-height:auto !important;
  background:rgba(255,250,242,.86) !important;
  border-right:1px solid var(--rb-line) !important;
  border-bottom:1px solid var(--rb-line) !important;
  padding:0 !important;
  overflow:hidden !important;
}
body.page-blog-archive .post-row::before{
  content:'';
  display:block;
  min-height:150px;
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.05),rgba(16,22,27,.70)),
    url('https://images.unsplash.com/photo-1460925895917-afdab827c52f?auto=format&fit=crop&w=900&q=78');
  background-size:cover;
  background-position:center;
}
body.page-blog-archive .post-row:nth-child(3n+2)::before{
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.05),rgba(16,22,27,.70)),
    url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?auto=format&fit=crop&w=900&q=78');
}
body.page-blog-archive .post-row:nth-child(3n+3)::before{
  background-image:
    linear-gradient(180deg,rgba(16,22,27,.05),rgba(16,22,27,.70)),
    url('https://images.unsplash.com/photo-1553877522-43269d4ea984?auto=format&fit=crop&w=900&q=78');
}
body.page-blog-archive .post-row .date,
body.page-blog-archive .post-row > div,
body.page-blog-archive .post-row .more{
  margin-left:22px !important;
  margin-right:22px !important;
}
body.page-blog-archive .post-row .more{margin-bottom:22px !important;}
body.page-blog-archive .post-row h3{
  color:#1A1612 !important;
  -webkit-text-fill-color:#1A1612 !important;
}
body.page-blog-archive .post-row p{
  color:#4d453d !important;
  -webkit-text-fill-color:#4d453d !important;
}

/* Rattrapage lisibilité final : aucune zone sombre ne doit hériter d'un text-fill noir */
.rb-inner-panel *,
.rb-client-band *,
.rb-inner-content :is(.section-services,.section-cta,.section-cities) *,
body.page-blog-archive .section-cta *{
  text-shadow:none !important;
}
.rb-inner-panel :is(h1,h2,h3,h4,h5,h6,strong,a,.rb-inner-btn),
.rb-client-band :is(h1,h2,h3,h4,h5,h6,strong,a),
.rb-inner-content :is(.section-services,.section-cta,.section-cities) :is(h1,h2,h3,h4,h5,h6,strong,a,.button,.cta-btn,.card-link),
body.page-blog-archive .section-cta :is(h1,h2,h3,h4,h5,h6,strong,a,.cta-btn){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.rb-inner-panel :is(p,li,span),
.rb-client-band :is(p,li,span),
.rb-inner-content :is(.section-services,.section-cta,.section-cities) :is(p,li,span),
body.page-blog-archive .section-cta :is(p,li,span){
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
}

@media(max-width:1100px){
  .rb-inner-proof-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rb-inner-proof:nth-child(2){border-right:0;}
  .rb-client-grid{grid-template-columns:1fr;}
  .rb-client-card{grid-template-columns:220px 1fr;grid-template-rows:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.12);}
  body.page-blog-archive .posts{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  .rb-inner-proof-strip,
  .rb-client-band{width:min(calc(100% - 24px),var(--rb-max));}
  .rb-inner-proof-strip{grid-template-columns:1fr;}
  .rb-inner-proof{border-right:0;border-bottom:1px solid var(--rb-line);}
  .rb-inner-proof:last-child{border-bottom:0;}
  .rb-client-band__head{grid-template-columns:1fr;}
  .rb-client-grid{grid-template-columns:1fr;}
  .rb-client-card{grid-template-columns:1fr;grid-template-rows:170px auto;}
  .rb-inner-panel{min-height:auto !important;}
  .rb-inner-panel::before{min-height:170px;}
  body.page-blog-archive .posts{grid-template-columns:1fr !important;}
}
