/*
 * Apercu local, identite plus editoriale.
 * Active uniquement avec ?identity=mature.
 */

html.identity-mature-preview body.page-home {
  --mature-paper: #f6f4ef;
  --mature-shadow: rgba(0, 0, 0, .09);
}

/* Le hero conserve son idee et reduit sa saturation et son emprise. */
html.identity-mature-preview .page-home .home-hero-grid > div {
  grid-template-columns: minmax(0, 800px) 360px;
  column-gap: 88px;
}

html.identity-mature-preview .page-home .hero-job-stack,
html.identity-mature-preview body.visual-audit.page-home .hero-job-stack {
  width: 340px !important;
  height: 520px !important;
  justify-self: center !important;
  filter: url(#mature-racoon-tone);
}

/* La couleur devient une ponctuation. Le carrousel retrouve le papier blanc. */
html.identity-mature-preview body.visual-audit.page-home .proof-strip,
html.identity-mature-preview body.visual-audit.page-home .proof-strip-list,
html.identity-mature-preview body.visual-audit.page-home .proof-strip-list li {
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit.page-home .expertise-section {
  background:
    radial-gradient(circle at 12% 12%, rgba(255, 123, 36, .055), transparent 26%),
    linear-gradient(180deg, #f7f7f8 0%, #f2f2f4 100%) !important;
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit.page-home .expertise-section .offer-detail-item {
  background: var(--mature-paper) !important;
}

/* Apple material : contenu opaque, coins continus, lumiere interne et ombre diffuse. */
html.identity-mature-preview.mature-cards-apple body.visual-audit.page-home .expertise-section .offer-detail-item {
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.92) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(15,18,28,.045),
    0 3px 8px rgba(15,18,28,.055),
    0 18px 44px rgba(15,18,28,.10),
    0 36px 70px rgba(15,18,28,.055);
  -webkit-backdrop-filter: blur(22px) saturate(120%);
  backdrop-filter: blur(22px) saturate(120%);
  transition: transform 420ms cubic-bezier(.22,1,.36,1), box-shadow 420ms cubic-bezier(.22,1,.36,1);
}

html.identity-mature-preview.mature-cards-apple body.visual-audit.page-home .expertise-section .offer-detail-item::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1;
  display: block !important;
  margin: 0 !important;
  border-radius: inherit;
  background:
    linear-gradient(135deg, rgba(255,255,255,.82), transparent 32%),
    radial-gradient(circle at 86% 92%, rgba(16,42,131,.045), transparent 34%);
  pointer-events: none;
}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.identity-mature-preview.mature-cards-apple body.visual-audit.page-home .expertise-section .offer-detail-item:hover,
  html.identity-mature-preview.mature-cards-apple body.visual-audit.page-home .expertise-section .offer-detail-item:focus-within {
    transform: translateY(-7px) scale(1.006);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,1),
      inset 0 -1px 0 rgba(15,18,28,.04),
      0 5px 12px rgba(15,18,28,.06),
      0 28px 58px rgba(15,18,28,.13),
      0 48px 86px rgba(15,18,28,.075);
  }
}

html.identity-mature-preview body.visual-audit .footer-actions .button {
  border: 0 !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.22),
    inset 0 -5px 10px rgba(0,0,0,.13),
    0 2px 3px rgba(0,0,0,.22),
    0 8px 16px rgba(0,0,0,.32),
    0 18px 28px rgba(0,0,0,.18);
  transform: translateY(0);
  transition: transform 320ms cubic-bezier(.22,1,.36,1), box-shadow 320ms ease;
}

html.identity-mature-preview body.visual-audit .footer-actions .button:first-child {
  background:
    radial-gradient(125% 95% at 24% 0%, #3155c8 0%, #173796 52%, #0b236f 100%) !important;
  color: var(--figma-white) !important;
}

html.identity-mature-preview body.visual-audit .footer-actions .button:last-child {
  background:
    radial-gradient(125% 95% at 24% 0%, #ffa166 0%, #ff843d 52%, #ef681f 100%) !important;
  color: var(--figma-black) !important;
}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.identity-mature-preview body.visual-audit .footer-actions .button:hover,
  html.identity-mature-preview body.visual-audit .footer-actions .button:focus-visible {
    transform: translateY(-2px);
    box-shadow:
      inset 0 1px 1px rgba(255,255,255,.28),
      inset 0 -5px 10px rgba(0,0,0,.13),
      0 2px 3px rgba(0,0,0,.20),
      0 10px 18px rgba(0,0,0,.35),
      0 22px 34px rgba(0,0,0,.20);
  }
}

/* Galets : des objets blancs bombes qui emergent du papier blanc. */
html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section {
  background: var(--figma-white) !important;
  height: 569px !important;
}

html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail {
  perspective: 1200px;
  width: calc(100% + 96px);
  height: 500px !important;
  margin-inline: -48px !important;
  padding: 18px 48px 50px !important;
  scroll-padding-inline: 48px;
}

html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail-item {
  isolation: isolate;
  overflow: hidden;
  height: 432px !important;
  min-height: 432px !important;
  padding: 42px 40px 38px !important;
  border: 1px solid rgba(255,255,255,.98) !important;
  border-radius: 42px 48px 44px 50px / 39px 44px 48px 43px !important;
  background:
    radial-gradient(110% 78% at 22% 0%, #fff 0%, rgba(255,255,255,.98) 48%, rgba(248,248,249,.98) 72%, rgba(239,240,242,.98) 100%) !important;
  box-shadow:
    inset 10px 12px 20px rgba(255,255,255,.98),
    inset -14px -18px 30px rgba(16,42,131,.045),
    0 0 18px rgba(15,18,28,.075),
    0 4px 10px -5px rgba(15,18,28,.18),
    0 12px 20px -14px rgba(15,18,28,.22);
  transform: translateY(-2px) rotateX(.35deg);
  transform-origin: 50% 72%;
  transition:
    transform 520ms cubic-bezier(.22,1,.36,1),
    box-shadow 520ms cubic-bezier(.22,1,.36,1);
}

html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail-item::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1;
  display: block !important;
  margin: 0 !important;
  border-radius: inherit;
  background:
    radial-gradient(70% 22% at 28% 3%, rgba(255,255,255,.98), transparent 72%),
    linear-gradient(142deg, rgba(255,255,255,.58) 0%, transparent 30%, rgba(16,42,131,.028) 100%);
  pointer-events: none;
}

html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail-item > * {
  position: relative;
  z-index: 1;
}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail-item:hover,
  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail-item:focus-within {
    transform: translateY(-2px) rotateX(.35deg);
    box-shadow:
      inset 10px 12px 20px rgba(255,255,255,1),
      inset -16px -20px 32px rgba(16,42,131,.05),
      0 0 19px rgba(15,18,28,.08),
      0 5px 11px -5px rgba(15,18,28,.19),
      0 13px 21px -14px rgba(15,18,28,.23);
  }
}

/* 01. Papier epais : souple, tactile, premium. */
html.identity-mature-preview.mature-cards-paper body.visual-audit.page-home .expertise-section .offer-detail-item {
  border: 1px solid #e6e1d7 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 2px 3px rgba(0,0,0,.04),
    0 18px 38px var(--mature-shadow);
}

/* 02. Tranche : une extrusion graphique franche, avec les deux accents. */
html.identity-mature-preview.mature-cards-edge body.visual-audit.page-home .expertise-section .offer-detail-item {
  border: 1px solid var(--figma-black) !important;
  background: var(--figma-white) !important;
  box-shadow:
    7px 7px 0 var(--figma-blue),
    13px 13px 0 var(--figma-orange),
    0 28px 45px rgba(0,0,0,.12);
  transform: translateY(-6px);
}

/* 03. Empile : plusieurs feuilles imprimees, en noir et blanc. */
html.identity-mature-preview.mature-cards-stack body.visual-audit.page-home .expertise-section .offer-detail-item {
  border: 1px solid var(--figma-black) !important;
  background: var(--mature-paper) !important;
  box-shadow:
    5px 5px 0 var(--figma-white),
    6px 6px 0 var(--figma-black),
    11px 11px 0 var(--figma-white),
    12px 12px 0 var(--figma-black),
    0 30px 48px rgba(0,0,0,.12);
  transform: translateY(-7px);
}

html.identity-mature-preview body.visual-audit.page-home .expertise-section .pillar-more {
  color: var(--figma-blue) !important;
}

html.identity-mature-preview body.visual-audit.page-home .expertise-section .figma-carousel-controls button {
  border-color: var(--figma-blue) !important;
  background: var(--figma-white) !important;
  color: var(--figma-blue) !important;
}

html.identity-mature-preview body.visual-audit.page-home .expertise-section .ios-carousel-dot::before {
  background: rgba(16, 42, 131, .24) !important;
}

html.identity-mature-preview body.visual-audit.page-home .expertise-section .ios-carousel-dot.is-active::before {
  background: var(--figma-blue) !important;
}

/* Les autres gestes pop respirent davantage autour du contenu. */
html.identity-mature-preview .page-home .workflow-sticker {
  width: min(100%, 270px);
}

html.identity-mature-preview .page-home .home-profile-sticker {
  display: none;
}

html.identity-mature-preview body.visual-audit.page-home .home-profile-title {
  margin-bottom: 26px !important;
  font-size: 44px !important;
  line-height: 1.06 !important;
  letter-spacing: -.025em !important;
}

/* Resserre la jonction carrousel / methode tout en preservant les ombres. */
html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .workflow-heading {
  align-items: start;
  padding-top: 28px;
}

@media (min-width: 801px) {
  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .figma-carousel-controls {
    margin-top: -24px !important;
  }
}

/* CTA galet : le volume des cartes, condense dans un objet orange. */
html.identity-mature-preview :is(
  .page-home .hero-actions .button.primary[href*="calendly.com"],
  .home-scroll-cta
) {
  border: 0 !important;
  background:
    radial-gradient(125% 95% at 24% 0%, #ffa166 0%, #ff843d 52%, #ef681f 100%) !important;
  color: var(--figma-black) !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.24),
    inset 0 -5px 10px rgba(133,50,0,.10),
    0 2px 3px rgba(58,25,5,.10),
    0 8px 16px rgba(58,25,5,.15),
    0 18px 28px rgba(246,105,31,.13);
  transform: translateY(0);
  transition: transform 320ms cubic-bezier(.22,1,.36,1), box-shadow 320ms ease;
}

html.identity-mature-preview .home-scroll-header .home-scroll-cta {
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.22),
    inset 0 -4px 8px rgba(133,50,0,.09),
    0 1px 2px rgba(58,25,5,.09),
    0 5px 11px rgba(58,25,5,.13),
    0 11px 19px rgba(246,105,31,.11) !important;
}

html.identity-mature-preview :is(
  .page-home .hero-actions .button.primary[href*="calendly.com"],
  .home-scroll-cta
)::before {
  content: none !important;
  animation: none !important;
}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.identity-mature-preview :is(
    .page-home .hero-actions .button.primary[href*="calendly.com"],
    .home-scroll-cta
  ):hover,
  html.identity-mature-preview :is(
    .page-home .hero-actions .button.primary[href*="calendly.com"],
    .home-scroll-cta
  ):focus-visible {
    transform: translateY(-2px);
    box-shadow:
      inset 0 1px 1px rgba(255,255,255,.30),
      inset 0 -5px 10px rgba(133,50,0,.10),
      0 2px 3px rgba(58,25,5,.09),
      0 10px 18px rgba(58,25,5,.17),
      0 22px 34px rgba(246,105,31,.15);
  }
}

/* Un seul grand aplat sombre, pense comme une affiche editoriale. */
html.identity-mature-preview body.visual-audit.page-home .agency-partner {
  background: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit.page-home .agency-partner-sticker img {
  filter: grayscale(1) contrast(1.28);
}

html.identity-mature-preview body.visual-audit.page-home .agency-partner-sticker {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

html.identity-mature-preview body.visual-audit.page-home .agency-partner-sticker::after {
  content: '';
  position: absolute;
  left: 30.5%;
  top: 18%;
  width: 51%;
  height: 31%;
  background: var(--figma-orange);
  mix-blend-mode: screen;
  pointer-events: none;
}

/* Une signature calme, tenue sur une ligne avant le footer. */
html.identity-mature-preview body.visual-audit.page-home .home-closing-line {
  padding-top: 58px;
  padding-bottom: 62px;
}

html.identity-mature-preview body.visual-audit.page-home .workflow-conclusion {
  width: 100%;
  max-width: none;
  font-size: clamp(21px, 2.15vw, 30px) !important;
  line-height: 1.18 !important;
  letter-spacing: -.018em;
  text-align: center;
}

html.identity-mature-preview .workflow-conclusion > :is(.fr,.en) {
  display: block;
  white-space: nowrap;
}

html.identity-mature-preview .workflow-conclusion .closing-step {
  display: inline;
}

html.identity-mature-preview .workflow-conclusion .closing-step:nth-child(2) {
  margin-left: 0;
}

html.identity-mature-preview .workflow-conclusion .closing-step:nth-child(3) {
  margin-left: 0;
}

html.identity-mature-preview .workflow-conclusion .closing-step:last-child::after {
  content: '';
  display: inline-block;
  width: .2em;
  height: .2em;
  margin-left: .18em;
  border-radius: 50%;
  background: var(--figma-orange);
  vertical-align: .12em;
}

@media (max-width: 1200px) and (min-width: 801px) {
  html.identity-mature-preview .page-home .home-hero-grid > div {
    grid-template-columns: minmax(0, 1fr) 31%;
    column-gap: 40px;
  }

  html.identity-mature-preview .page-home .hero-job-stack,
  html.identity-mature-preview body.visual-audit.page-home .hero-job-stack {
    width: 100% !important;
    height: 470px !important;
  }
}

@media (max-width: 800px) {
  html.identity-mature-preview .page-home .hero-job-stack,
  html.identity-mature-preview body.visual-audit.page-home .hero-job-stack {
    width: min(76vw, 320px) !important;
    height: min(108vw, 460px) !important;
    margin: -8px auto 0 !important;
  }

  html.identity-mature-preview body.visual-audit.page-home .expertise-section {
    padding-top: 24px !important;
    padding-bottom: 32px !important;
  }

  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section {
    height: 605px !important;
  }

  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail {
    width: calc(100% + 48px);
    height: 520px !important;
    margin-inline: -24px !important;
    padding: 14px 24px 50px !important;
    scroll-padding-inline: 24px;
  }

  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .expertise-section .offer-detail-item {
    height: 466px !important;
    min-height: 466px !important;
  }

  html.identity-mature-preview .page-home .workflow-sticker {
    width: min(64vw, 220px);
  }

  html.identity-mature-preview .page-home .home-profile-sticker {
    width: min(76vw, 290px);
  }

  html.identity-mature-preview body.visual-audit.page-home .home-profile-title {
    margin-bottom: 18px !important;
    font-size: 30px !important;
    line-height: 1.1 !important;
  }

  html.identity-mature-preview.mature-cards-pebble body.visual-audit.page-home .workflow-heading {
    padding-top: 36px;
  }

  html.identity-mature-preview body.visual-audit.page-home .context-section h2.workflow-title {
    max-width: 100% !important;
    font-size: clamp(42px, 12vw, 50px) !important;
    line-height: 1 !important;
    white-space: normal !important;
  }

  html.identity-mature-preview body.visual-audit.page-home .home-closing-line {
    padding-top: 42px;
    padding-bottom: 46px;
  }

  html.identity-mature-preview body.visual-audit.page-home .workflow-conclusion {
    font-size: clamp(21px, 6.6vw, 29px) !important;
    text-align: left;
  }

  html.identity-mature-preview .workflow-conclusion > :is(.fr,.en) {
    white-space: normal;
  }
}

/* -------------------------------------------------------------------------- */
/* Direction mature, pages secondaires.                                       */
/* -------------------------------------------------------------------------- */

html.identity-mature-preview body.visual-audit:not(.page-home) {
  --mature-paper: #f7f7f6;
  --mature-soft: #f2f2f3;
  background: var(--figma-white);
  color: var(--figma-black);
}

html.identity-mature-preview body.visual-audit:not(.page-home) > .site-header {
  border-bottom: 0 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.08);
}

html.identity-mature-preview body.visual-audit:not(.page-home) .section {
  border-bottom: 0 !important;
  background: var(--figma-white) !important;
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .section > .section-inner {
  border-top: 0 !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) :is(.page-hero h1, .section h2) {
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .page-hero h1 {
  max-width: 1120px;
  font-size: clamp(54px, 6.2vw, 88px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.042em !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) :is(.hero-lead, .hero-copy, .hero-subtitle, .section p, .section li) {
  font-weight: 400;
}

/* Les appels deviennent des objets orange ou bleus selon leur fonction. */
html.identity-mature-preview body.visual-audit :is(
  .figma-header-cta,
  .mini-cta,
  .button[href*="calendly.com"],
  .cta[href*="calendly.com"]
) {
  border: 0 !important;
  background: radial-gradient(125% 95% at 24% 0%, #ffa166 0%, #ff843d 52%, #ef681f 100%) !important;
  color: var(--figma-black) !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.24),
    inset 0 -5px 10px rgba(133,50,0,.10),
    0 2px 3px rgba(58,25,5,.10),
    0 8px 16px rgba(58,25,5,.15),
    0 18px 28px rgba(246,105,31,.13) !important;
}

html.identity-mature-preview body.visual-audit :is(
  .button.primary:not([href*="calendly.com"]),
  .button.secondary,
  .cta:not([href*="calendly.com"]),
  .nav-contact
) {
  border: 0 !important;
  background: radial-gradient(125% 95% at 24% 0%, #3155c8 0%, #173796 52%, #0b236f 100%) !important;
  color: var(--figma-white) !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.18),
    inset 0 -4px 9px rgba(0,0,0,.12),
    0 2px 3px rgba(0,0,0,.10),
    0 8px 15px rgba(16,42,131,.16) !important;
}

html.identity-mature-preview body.visual-audit :is(
  .figma-header-cta,
  .mini-cta,
  .button,
  .cta,
  .nav-contact
)::before {
  content: none !important;
  animation: none !important;
}

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.identity-mature-preview body.visual-audit :is(.figma-header-cta,.mini-cta,.button,.cta,.nav-contact):hover,
  html.identity-mature-preview body.visual-audit :is(.figma-header-cta,.mini-cta,.button,.cta,.nav-contact):focus-visible {
    transform: translateY(-2px);
  }
}

/* Les bandeaux restent editoriaux : texte noir, ponctuation orange. */
html.identity-mature-preview body.visual-audit .proof-strip,
html.identity-mature-preview body.visual-audit .proof-strip-track,
html.identity-mature-preview body.visual-audit .proof-strip-list,
html.identity-mature-preview body.visual-audit .proof-strip-list li {
  background: var(--figma-white) !important;
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit .proof-strip-list li::after {
  background: var(--figma-orange) !important;
}

/* Les carrousels partagent le relief des galets de la homepage. */
html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section {
  background: var(--figma-white) !important;
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section :is(h2,h3,p,li,a) {
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section :is(
  .offer-detail,
  .work-streams,
  .direction-list,
  .method,
  .scope-grid
) {
  gap: 28px !important;
  padding-top: 18px !important;
  padding-bottom: 42px !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section :is(
  .offer-detail-item,
  .work-stream,
  .direction-row,
  .method > article,
  .scope-card
) {
  isolation: isolate;
  overflow: hidden;
  min-height: 360px !important;
  padding: 36px 34px 32px !important;
  border: 1px solid rgba(255,255,255,.98) !important;
  border-radius: 36px 42px 38px 44px / 34px 39px 43px 38px !important;
  background:
    radial-gradient(110% 78% at 22% 0%, #fff 0%, rgba(255,255,255,.98) 48%, rgba(248,248,249,.98) 72%, rgba(239,240,242,.98) 100%) !important;
  box-shadow:
    inset 9px 11px 18px rgba(255,255,255,.98),
    inset -12px -16px 26px rgba(16,42,131,.04),
    0 0 18px rgba(15,18,28,.075),
    0 4px 10px -5px rgba(15,18,28,.18),
    0 12px 20px -14px rgba(15,18,28,.22) !important;
  transform: none !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section :is(
  .offer-detail-item,
  .work-stream,
  .direction-row,
  .method > article,
  .scope-card
)::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1;
  display: block !important;
  border-radius: inherit;
  background: radial-gradient(70% 22% at 28% 3%, rgba(255,255,255,.98), transparent 72%);
  pointer-events: none;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section .figma-carousel-controls button {
  border-color: var(--figma-blue) !important;
  background: var(--figma-white) !important;
  color: var(--figma-blue) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section .ios-carousel-dot::before {
  background: rgba(16,42,131,.24) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section .ios-carousel-dot.is-active::before {
  background: var(--figma-blue) !important;
}

html.identity-mature-preview body.visual-audit.page-cmo-part-time #role .scope-card {
  border: 1px solid rgba(255,255,255,.98) !important;
}

/* Le rail CMO garde assez de matière autour de chaque galet pour ne pas couper son relief. */
html.identity-mature-preview body.visual-audit.page-cmo-part-time #role .scope-grid {
  width: calc(100% + 40px) !important;
  margin-inline: -20px !important;
  padding: 18px 20px 34px !important;
  scroll-padding-inline: 20px;
}

/* Un seul temps fort noir par page pour donner du rythme. */
html.identity-mature-preview body.visual-audit.page-benjamin-warlop .section.dark:not(.carousel-section),
html.identity-mature-preview body.visual-audit.page-cmo-part-time .cmo-comparison-section,
html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section,
html.identity-mature-preview body.visual-audit.page-strategie-de-marque .brand-integrated-section {
  background: var(--figma-black) !important;
  color: var(--figma-white) !important;
}

html.identity-mature-preview body.visual-audit.page-benjamin-warlop .section.dark:not(.carousel-section) :is(h2,h3,p,li,a),
html.identity-mature-preview body.visual-audit.page-cmo-part-time .cmo-comparison-section :is(h2,h3,p,li,a),
html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section :is(h2,h3,p,li,a,label),
html.identity-mature-preview body.visual-audit.page-strategie-de-marque .brand-integrated-section :is(h2,h3,p,li,a) {
  color: var(--figma-white) !important;
}

html.identity-mature-preview body.visual-audit.page-cmo-part-time .cmo-comparison-section .comparison-item {
  border: 1px solid rgba(255,255,255,.16) !important;
  background: rgba(255,255,255,.07) !important;
}

html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section :is(input,textarea) {
  border-color: rgba(255,255,255,.26) !important;
  background: var(--figma-white) !important;
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section .resource-privacy,
html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section .resource-privacy a {
  color: rgba(255,255,255,.72) !important;
}

/* Les blocs secondaires restent simples, avec un volume tres leger. */
html.identity-mature-preview body.visual-audit:not(.page-home) :is(
  .terrain-note,
  .growth-evidence,
  .midpage-cta,
  .comparison-item
) {
  border-radius: 24px;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .midpage-cta {
  margin-inline: var(--figma-gutter) !important;
  border: 0 !important;
  background: var(--mature-soft) !important;
}

/* Le bloc de contact Brand Strategy garde ses deux bords dans le viewport. */
html.identity-mature-preview body.visual-audit.page-strategie-de-marque .midpage-cta {
  width: calc(100% - (2 * var(--figma-gutter))) !important;
  margin-inline: auto !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) > footer {
  background: var(--figma-black) !important;
  color: var(--figma-white) !important;
}

/* Footer desktop : une composition unique, centree sur l'axe de la page. */
@media (min-width: 801px) {
  html.identity-mature-preview body.visual-audit > footer {
    text-align: center;
  }

  html.identity-mature-preview body.visual-audit > footer .footer-contact {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center;
    gap: 24px !important;
  }

  html.identity-mature-preview body.visual-audit > footer .footer-contact > div {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  html.identity-mature-preview body.visual-audit > footer .footer-email {
    margin-inline: auto;
  }

  html.identity-mature-preview body.visual-audit > footer .footer-actions,
  html.identity-mature-preview body.visual-audit > footer .footer-nav {
    justify-content: center;
  }
}

/* Mentions legales : meme systeme, expression volontairement plus formelle. */
html.identity-mature-preview body:not(.visual-audit) {
  --cream: #fff;
  --ink: #000;
  --soft: #4d4d4d;
  --line: rgba(0,0,0,.14);
  --accent: #ff7b24;
  background: #fff;
}

html.identity-mature-preview body:not(.visual-audit) > header {
  border-bottom: 0;
  box-shadow: 0 1px 0 rgba(0,0,0,.08);
}

html.identity-mature-preview body:not(.visual-audit) > footer {
  background: #000;
  color: rgba(255,255,255,.68);
}

/* Ajustements de finition des pages satellites. */
html.identity-mature-preview {
  scroll-padding-top: 88px !important;
}

html.identity-mature-preview body.visual-audit.page-benjamin-warlop .page-hero .offer-links a[href*="calendly.com"],
html.identity-mature-preview body.visual-audit.page-strategie-de-marque .page-hero .hero-actions .button.primary {
  min-height: 52px !important;
  padding: 14px 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: radial-gradient(125% 95% at 24% 0%, #ffa166 0%, #ff843d 52%, #ef681f 100%) !important;
  color: var(--figma-black) !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.24),
    inset 0 -5px 10px rgba(133,50,0,.10),
    0 2px 3px rgba(58,25,5,.10),
    0 8px 16px rgba(58,25,5,.15),
    0 18px 28px rgba(246,105,31,.13) !important;
  text-decoration: none !important;
}

html.identity-mature-preview body.visual-audit.page-strategie-de-marque [data-section="2"] :is(.proof-strip-list, .proof-strip-list li) {
  color: var(--figma-black) !important;
}

html.identity-mature-preview body.visual-audit.page-strategie-de-marque [data-section="2"] .proof-strip-list li::after {
  color: var(--figma-orange) !important;
  background: var(--figma-orange) !important;
}

html.identity-mature-preview body.visual-audit.page-strategie-de-marque [data-section="4"] .carousel-actions .carousel-email,
html.identity-mature-preview body.visual-audit.page-strategie-de-marque [data-section="6"] .midpage-actions .midpage-email {
  border: 0 !important;
  background: radial-gradient(125% 95% at 24% 0%, #3155c8 0%, #173796 52%, #0b236f 100%) !important;
  color: var(--figma-white) !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.18),
    inset 0 -4px 9px rgba(0,0,0,.12),
    0 2px 3px rgba(0,0,0,.10),
    0 8px 15px rgba(16,42,131,.16) !important;
}

html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section .hero-conversion .button.secondary {
  align-self: center !important;
  width: auto !important;
  min-width: 220px !important;
  max-width: 280px !important;
  padding-inline: 24px !important;
}

html.identity-mature-preview body.visual-audit.page-adoption-ia :is(
  [data-section="6"] .evidence,
  [data-section="9"] .people-stat
) {
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 32px 36px 34px 38px / 30px 34px 38px 33px !important;
  box-shadow:
    inset 8px 10px 16px rgba(255,255,255,.14),
    inset -10px -14px 22px rgba(0,0,0,.09),
    0 0 18px rgba(15,18,28,.08),
    0 5px 11px -5px rgba(15,18,28,.24),
    0 14px 24px -15px rgba(15,18,28,.30) !important;
}

html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section > .section-inner > h2 {
  position: relative;
  z-index: 2;
  isolation: isolate;
  background: var(--figma-white) !important;
}

@media (max-width: 800px) {
  html.identity-mature-preview {
    scroll-padding-top: 72px !important;
  }

  html.identity-mature-preview body.visual-audit:not(.page-home) .page-hero h1 {
    font-size: clamp(38px, 10.8vw, 52px) !important;
    line-height: 1.04 !important;
  }

  html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section :is(
    .offer-detail,
    .work-streams,
    .direction-list,
    .method,
    .scope-grid
  ) {
    gap: 18px !important;
    padding-top: 14px !important;
    padding-bottom: 36px !important;
  }

  html.identity-mature-preview body.visual-audit:not(.page-home) .carousel-section :is(
    .offer-detail-item,
    .work-stream,
    .direction-row,
    .method > article,
    .scope-card
  ) {
    min-height: 350px !important;
    padding: 30px 28px 28px !important;
    border-radius: 32px 36px 34px 38px / 30px 34px 38px 33px !important;
  }

  html.identity-mature-preview body.visual-audit:not(.page-home) .midpage-cta {
    margin-inline: 20px !important;
  }

  html.identity-mature-preview body.visual-audit.page-strategie-de-marque .midpage-cta {
    width: calc(100% - 40px) !important;
    margin-inline: auto !important;
  }

  html.identity-mature-preview body.visual-audit:not(.page-home) .page-hero .hero-actions .button.secondary {
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 8px 4px !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--figma-blue) !important;
    box-shadow: none !important;
    text-decoration: underline !important;
    text-underline-offset: 4px;
  }

  html.identity-mature-preview body.visual-audit.page-adoption-ia .resource-section .hero-conversion .button.secondary {
    width: min(260px, 100%) !important;
    min-width: 0 !important;
  }
}
