/* Innovate Community — Étape 43 verified visible finishing pass */

/* 1 — One consistent “Parlons-en” button everywhere. */
html body a.floating-talk,
html body .floating-talk {
  position:fixed !important; right:clamp(18px,3vw,46px) !important;
  bottom:clamp(18px,3vw,38px) !important; left:auto !important; top:auto !important;
  z-index:2147483000 !important; display:inline-flex !important; align-items:center !important;
  justify-content:center !important; gap:10px !important; width:auto !important;
  min-width:0 !important; max-width:calc(100vw - 36px) !important; min-height:60px !important;
  padding:16px 25px !important; border:1px solid rgba(17,17,17,.48) !important;
  border-radius:999px !important; background:#f6f2eb !important; color:#111 !important;
  font-family:"Space Grotesk",Arial,sans-serif !important; font-size:18px !important;
  font-weight:500 !important; line-height:1 !important; letter-spacing:-.025em !important;
  text-transform:none !important; text-decoration:none !important; white-space:nowrap !important;
  box-shadow:0 14px 36px rgba(0,0,0,.22) !important; filter:none !important;
  mix-blend-mode:normal !important; backdrop-filter:none !important; opacity:1 !important;
}
html body .floating-talk *, html body .floating-talk .talk-smile {color:#111 !important; text-shadow:none !important; filter:none !important;}
html body .floating-talk .talk-smile {display:inline-grid !important; place-items:center !important; width:25px !important; height:25px !important; border:1px solid currentColor !important; border-radius:50% !important; font-size:13px !important;}
html body .floating-talk:hover, html body .floating-talk:focus-visible {background:#111 !important; color:#ccff00 !important; border-color:#111 !important; transform:translateY(-3px) !important;}
html body .floating-talk:hover *, html body .floating-talk:focus-visible * {color:#ccff00 !important;}

/* 2 — News panel: keep the dark overlay readable.
   The previous pass made all list-view text dark, which became invisible on
   the dark glass panel. We only keep dark text for the light reading view. */
html body .news-tool-panel:not(.is-reading) .news-tool-kicker,
html body .news-tool-panel:not(.is-reading) .news-tool-kicker *,
html body .news-tool-panel:not(.is-reading) .news-tool-title,
html body .news-tool-panel:not(.is-reading) .news-tool-title *,
html body .news-tool-panel:not(.is-reading) .news-tool-tabs button,
html body .news-tool-panel:not(.is-reading) .news-tool-tabs button *,
html body .news-tool-panel:not(.is-reading) .news-tool-meta,
html body .news-tool-panel:not(.is-reading) .news-tool-meta *,
html body .news-tool-panel:not(.is-reading) .news-card h3,
html body .news-tool-panel:not(.is-reading) .news-card h3 * {
  color:#f5f3ee !important;
  -webkit-text-fill-color:#f5f3ee !important;
  opacity:1 !important;
  text-shadow:none !important;
  filter:none !important;
  -webkit-filter:none !important;
  mix-blend-mode:normal !important;
}
html body .news-tool-panel:not(.is-reading) .news-card p,
html body .news-tool-panel:not(.is-reading) .news-card p *,
html body .news-tool-panel:not(.is-reading) .news-tool-meta,
html body .news-tool-panel:not(.is-reading) .news-tool-meta *{
  color:rgba(245,243,238,.72) !important;
  -webkit-text-fill-color:rgba(245,243,238,.72) !important;
  opacity:1 !important;
}
html body .news-tool-panel:not(.is-reading) .news-card small,
html body .news-tool-panel:not(.is-reading) .news-card small *,
html body .news-tool-panel:not(.is-reading) .news-tool-kicker span{
  color:#ccff00 !important;
  -webkit-text-fill-color:#ccff00 !important;
  opacity:1 !important;
  text-shadow:none !important;
  filter:none !important;
}
html body .news-tool-panel:not(.is-reading) .news-tool-title{max-width:16ch !important;}

/* On the light article view, keep editorial micro-headings crisp and dark. */
html body .news-tool-panel.is-reading .news-tool-kicker,
html body .news-tool-panel.is-reading .news-tool-kicker *,
html body .news-tool-panel.is-reading .news-tool-title,
html body .news-tool-panel.is-reading .news-tool-title *,
html body .news-tool-panel.is-reading .news-card h3,
html body .news-tool-panel.is-reading .news-card h3 * {
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  opacity:1 !important;
  text-shadow:none !important;
  filter:none !important;
  -webkit-filter:none !important;
  mix-blend-mode:normal !important;
}
html body .news-tool-panel.is-reading .news-card p,
html body .news-tool-panel.is-reading .news-card small {
  color:#353535 !important;
  -webkit-text-fill-color:#353535 !important;
  opacity:1 !important;
}

/* 3 — Full professional content on all five individual service pages. */
html body.page-service .service-expanded {display:block !important; position:relative !important; z-index:3 !important; width:100% !important; padding:clamp(82px,9vw,148px) clamp(22px,6vw,96px) !important; background:#f6f2eb !important; color:#111 !important; overflow:visible !important;}
html body.page-service .service-expanded, html body.page-service .service-expanded * {color:#111 !important; opacity:1 !important; text-shadow:none !important; filter:none !important; mix-blend-mode:normal !important;}
html body.page-service .service-expanded-inner {width:min(1180px,100%) !important; margin:0 auto !important;}
html body.page-service .service-expanded-kicker {margin:0 0 22px !important; font-family:"Space Grotesk",Arial,sans-serif !important; font-size:12px !important; font-weight:700 !important; letter-spacing:.16em !important; text-transform:uppercase !important;}
html body.page-service .service-expanded-title {max-width:980px !important; margin:0 0 30px !important; font-family:"Space Grotesk",Arial,sans-serif !important; font-size:clamp(42px,6vw,92px) !important; font-weight:500 !important; line-height:.98 !important; letter-spacing:-.055em !important;}
html body.page-service .service-expanded-lead {max-width:850px !important; margin:0 0 clamp(66px,8vw,112px) !important; font-family:"Advent Pro",Arial,sans-serif !important; font-size:clamp(22px,1.8vw,29px) !important; line-height:1.42 !important; letter-spacing:0 !important;}
html body.page-service .service-detail-section {display:grid !important; grid-template-columns:minmax(150px,230px) minmax(0,1fr) !important; gap:clamp(30px,6vw,86px) !important; padding:clamp(46px,5vw,76px) 0 !important; border-top:1px solid rgba(17,17,17,.24) !important; background:transparent !important; min-height:0 !important;}
html body.page-service .service-detail-kicker {font-family:"Space Grotesk",Arial,sans-serif !important; font-size:12px !important; font-weight:700 !important; line-height:1.25 !important; letter-spacing:.14em !important; text-transform:uppercase !important;}
html body.page-service .service-detail-copy {max-width:830px !important;}
html body.page-service .service-detail-copy h3 {margin:0 0 24px !important; font-family:"Space Grotesk",Arial,sans-serif !important; font-size:clamp(31px,3.4vw,54px) !important; font-weight:500 !important; line-height:1.04 !important; letter-spacing:-.045em !important;}
html body.page-service .service-detail-copy p, html body.page-service .service-detail-copy li {font-family:"Advent Pro",Arial,sans-serif !important; font-size:clamp(19px,1.45vw,24px) !important; line-height:1.48 !important; letter-spacing:0 !important;}
html body.page-service .service-detail-copy p {margin:0 0 24px !important;}
html body.page-service .service-detail-list {list-style:none !important; margin:30px 0 0 !important; padding:0 !important; display:grid !important; gap:14px !important;}
html body.page-service .service-detail-list li {position:relative !important; padding-left:26px !important;}
html body.page-service .service-detail-list li::before {content:"" !important; position:absolute !important; left:0 !important; top:.67em !important; width:8px !important; height:8px !important; border-radius:50% !important; background:#ccff00 !important; border:1px solid #111 !important;}

/* Footer on services: same light editorial footer as the homepage. */
html body.page-service footer.footer-redesign {--footer-bg:#f6f2eb !important; --footer-fg:#111 !important; --footer-line:rgba(17,17,17,.22) !important; --footer-hover:#9d1000 !important; --footer-logo-filter:contrast(1.12) brightness(.92) !important; background:#f6f2eb !important; color:#111 !important;}

/* 4 — Correct homepage logo on privacy, legal notice and cookies pages. */
html body.page-legal .site-header .brand.navbar-brand-inline {display:inline-flex !important; align-items:center !important; gap:13px !important; color:#111 !important; text-decoration:none !important; white-space:nowrap !important;}
html body.page-legal .site-header .navbar-symbol-img {display:block !important; width:58px !important; height:50px !important; object-fit:contain !important; filter:none !important;}
html body.page-legal .site-header .navbar-wordmark {font-family:"Space Grotesk",Arial,sans-serif !important; font-size:clamp(22px,2vw,32px) !important; font-weight:600 !important; line-height:1 !important; letter-spacing:-.055em !important;}

/* 5 — About page: a more open header and title composition. */
html body.page-about header.nav {min-height:124px !important; padding:22px clamp(22px,3vw,52px) !important;}
html body.page-about section#top.about-hero-premium {min-height:calc(100vh - 124px) !important; padding:clamp(86px,9vw,150px) clamp(28px,6vw,94px) clamp(82px,8vw,132px) !important; column-gap:clamp(64px,8vw,132px) !important; row-gap:clamp(56px,7vw,102px) !important; align-items:center !important;}
html body.page-about .about-hero-copy {max-width:820px !important; padding:0 !important;}
html body.page-about .about-hero-kicker {margin:0 0 clamp(28px,3vw,44px) !important; font-family:"Space Grotesk",Arial,sans-serif !important; font-size:12px !important; font-weight:700 !important; line-height:1.2 !important; letter-spacing:.16em !important; text-transform:uppercase !important;}
html body.page-about .about-hero-premium h1 {max-width:920px !important; margin:0 0 clamp(42px,5vw,76px) !important; font-family:"Space Grotesk",Arial,sans-serif !important; font-size:clamp(58px,8vw,122px) !important; font-weight:500 !important; line-height:.94 !important; letter-spacing:-.06em !important; text-wrap:balance !important;}
html body.page-about .about-hero-statement {max-width:740px !important; margin:0 0 28px !important; font-size:clamp(24px,2.15vw,37px) !important; line-height:1.3 !important; letter-spacing:-.02em !important;}
html body.page-about .about-hero-signature {margin:0 !important; font-size:clamp(17px,1.3vw,21px) !important; line-height:1.35 !important;}
html body.page-about .about-hero-visual {margin:0 !important; align-self:center !important;}
html body.page-about .about-hero-jump {margin-top:clamp(42px,5vw,74px) !important; padding-top:24px !important; gap:clamp(14px,2vw,30px) !important;}

/* 7 — Process typography: no intersecting letters, improved reading rhythm. */
html body.page-process .process-v2-copy strong,
html body.page-process .process-v2-panel h1 {font-family:"Space Grotesk",Arial,sans-serif !important; font-weight:500 !important; font-kerning:normal !important; font-variant-ligatures:none !important; font-feature-settings:"liga" 0,"kern" 1 !important; text-rendering:geometricPrecision !important;}
html body.page-process .process-v2-copy strong {display:block !important; font-size:clamp(25px,2.05vw,36px) !important; line-height:1.12 !important; letter-spacing:-.025em !important; word-spacing:.02em !important;}
html body.page-process .process-v2-copy small,
html body.page-process .process-v2-detail-copy,
html body.page-process .process-v2-detail-copy *,
html body.page-process .process-v2-deliverables,
html body.page-process .process-v2-deliverables * {font-family:"Advent Pro",Arial,sans-serif !important; font-kerning:normal !important; font-variant-ligatures:none !important; font-feature-settings:"liga" 0,"kern" 1 !important; letter-spacing:.01em !important; text-rendering:geometricPrecision !important;}
html body.page-process .process-v2-copy small {display:block !important; margin-top:11px !important; font-size:clamp(17px,1.2vw,21px) !important; line-height:1.46 !important;}
html body.page-process .process-v2-panel h1 {font-size:clamp(56px,5.8vw,92px) !important; line-height:1 !important; letter-spacing:-.035em !important; margin-bottom:27px !important;}
html body.page-process .process-v2-panel-kicker {font-family:"Space Grotesk",Arial,sans-serif !important; font-size:12px !important; font-weight:700 !important; line-height:1.35 !important; letter-spacing:.15em !important;}
html body.page-process .process-v2-detail-copy p, html body.page-process .process-v2-detail-copy li {font-size:clamp(18px,1.3vw,23px) !important; line-height:1.52 !important;}
html body.page-process .process-v2-step {min-height:132px !important; padding-top:27px !important; padding-bottom:27px !important;}

@media(max-width:760px),(hover:none),(pointer:coarse){
 html body .floating-talk {right:16px !important; bottom:16px !important; min-height:52px !important; padding:13px 18px !important; font-size:16px !important; transform:none !important;}
 html body.page-service .service-detail-section {grid-template-columns:1fr !important; gap:20px !important;}
 html body.page-service .service-expanded-title {font-size:clamp(40px,13vw,68px) !important;}
 html body.page-legal .site-header .navbar-symbol-img {width:44px !important; height:39px !important;}
 html body.page-legal .site-header .navbar-wordmark {font-size:21px !important;}
 html body.page-about header.nav {min-height:100px !important;}
 html body.page-about section#top.about-hero-premium {min-height:auto !important; padding:64px 20px 72px !important;}
 html body.page-about .about-hero-premium h1 {font-size:clamp(50px,15vw,82px) !important;}
 html body.page-process .process-v2-copy strong {font-size:26px !important; line-height:1.14 !important;}
 html body.page-process .process-v2-panel h1 {font-size:clamp(48px,14vw,70px) !important;}
}
