/* V105 project harmony: one quiet canvas around three distinct client stories.
   The animation canvases retain their real project palettes and transitions. */
body.sober-home {
  --client-canvas: #f7f8fb;
  --client-canvas-line: #e0e5ee;
}

/* Keep the editorial wrappers aligned; color belongs to the story stage, not
   to unrelated bands before or after it. */
#malakoff-experience.mh9,
.sober-cetelem,
#allianz-trade-pay.at84 {
  background-color: var(--client-canvas);
}

.sober-cetelem {
  border-top-color: var(--client-canvas-line);
  border-bottom-color: var(--client-canvas-line);
}
#interface-en-contexte .c103-scene-sticky{height:calc(100svh - var(--header,76px));min-height:400px}

/* Malakoff's old dark shell left its light transcript and CTA text on a dark
   field. Return the closing reading area to the shared canvas with dark ink. */
#malakoff-experience.mh9 .mh-after {
  background: var(--client-canvas);
  color: #25364d;
  border-top: 1px solid var(--client-canvas-line);
}

#malakoff-experience.mh9 .mh-after .mh3-transcript {
  color: #536174;
  border-top-color: var(--client-canvas-line);
}

#malakoff-experience.mh9 .mh-after .mh3-transcript summary,
#malakoff-experience.mh9 .mh-after .mh3-transcript h3 {
  color: #20344c;
}

#malakoff-experience.mh9 .mh-after .mh3-transcript p,
#malakoff-experience.mh9 .mh-after .mh3-transcript li {
  color: #536174;
}

#malakoff-experience.mh9 .mh-after > a:not(.sober-case-link) {
  color: #294b6a;
  text-decoration-color: #8294a9;
}

/* The half-disc header control was a manual motion toggle, not a theme
   switch. The site now follows the operating-system reduced-motion setting. */
.site-header .v105-motion-quick { display: none !important; }

/* Give the Malakoff wireframe a real reading order instead of letting its
   label, total and caption collapse into one line during the camera move. */
#malakoff-experience.mh86 .mh76-wire-content {
  position: absolute;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  gap: 5px;
  top: 46px;
  left: 16px;
  right: 16px;
  width: auto;
  white-space: normal;
  line-height: 1.3;
}
#malakoff-experience.mh86 .mh76-wire-label,
#malakoff-experience.mh86 .mh86-wire-caption { display: block; margin: 0; }
#malakoff-experience.mh86 .mh86-wire-total { display: block; line-height: 1.1; }
#malakoff-experience.mh86 .mh86-wire-split { display: flex; width: min(100%, 200px); }

/* Match the unobtrusive edge rail used by the other client stories. */
.sober-scene-controls {
  left: 0;
  right: 0;
  bottom: 0;
  transform: none;
  width: 100%;
  min-height: 80px;
  display: grid;
  grid-template-rows: 24px 1fr;
  gap: 0;
  padding: 0 20px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: #f5f8f4;
  color: #294b34;
}
.sober-scene-controls .c103-chapter-bars { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; width: 100%; align-self: stretch; }
.sober-scene-controls .c103-control-row { display: flex; justify-content: space-between; align-items: center; gap: 14px; min-height: 56px; }
.sober-scene-controls [data-workshop-step] { font-size: 11px; font-weight: 600; font-variant-numeric: tabular-nums; }
.sober-scene-controls .c103-arrow-controls { display: flex; align-items: center; gap: 8px; }
.sober-scene-controls button[data-workshop-jump] {
  position: relative;
  display: block;
  min-width: 0;
  width: 100%;
  min-height: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: 0;
}
.sober-scene-controls button[data-workshop-jump] span { display: none; }
.sober-scene-controls button[data-workshop-jump]::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:#cedbd1}
.sober-scene-controls button[data-workshop-jump][aria-current] { background: transparent; box-shadow: none; }
.sober-scene-controls button[data-workshop-jump][aria-current]::before{background:#39633d}
.sober-scene-controls button[data-workshop-jump]:focus-visible,
.sober-scene-controls button.v105-workshop-arrow:focus-visible,
.sober-scene-controls > a:focus-visible {
  outline: 3px solid #3158f4;
  outline-offset: 4px;
}
.sober-scene-controls .v105-workshop-arrow { min-width: 38px; width: 38px; min-height: 38px; height: 38px; padding: 0; border: 1px solid currentColor; border-radius: 50%; }
.sober-scene-controls .c103-skip-link { display: none; }
.c103-lab[data-c103-backdrop="dark"] .sober-scene-controls { background: #153b2a; color: #f3f8ef; }
.c103-lab[data-c103-backdrop="dark"] .sober-scene-controls button[data-workshop-jump]::before { background: #698b71; }
.c103-lab[data-c103-backdrop="dark"] .sober-scene-controls button[data-workshop-jump][aria-current]::before { background: #e6f6d7; }


/* V105 mobile composition repairs. The source logo is the original V104 SVG. */
.c103-client-logo{display:block;width:142px;height:40px;object-fit:contain;object-position:left center;margin-bottom:15px}
.c103-stage-logo{position:absolute;z-index:3;top:16px;left:clamp(18px,3vw,42px);width:112px;height:42px;object-fit:contain;padding:5px 10px;background:#fffffff2;border:1px solid #dce8dc;border-radius:7px;pointer-events:none;transition:opacity .25s,visibility .25s}
.c103-intro-head .c103-eyebrow{display:block}
.sober-scene-controls .c103-skip-link:focus-visible{display:flex;position:absolute;right:12px;bottom:64px;width:auto;height:auto;padding:6px 9px;background:#fff;color:#193e29}

#malakoff-experience .mh3-problem-stat{display:flex;align-items:center;gap:10px;padding:7px 0 4px;color:#17334e;font:500 10px/1.3 var(--sans,Arial,sans-serif)}
#malakoff-experience .mh3-problem-stat strong{font-size:25px;line-height:1;color:#e85d37;white-space:nowrap}
#malakoff-experience .mh3-problem-stat span{max-width:31ch}
#malakoff-experience .mh3-decision-wire{position:absolute;inset:112px 26px 25px;display:flex;flex-direction:column;gap:12px;opacity:0;visibility:hidden;color:#526676;font:500 13px/1.3 var(--sans,Arial,sans-serif)}
#malakoff-experience .mh3-decision-wire>span{font-size:10px;letter-spacing:.12em;text-transform:uppercase}
#malakoff-experience .mh3-decision-wire strong{color:#172e45;font-size:23px}
#malakoff-experience .mh3-decision-wire i{display:block;height:9px;width:82%;border-radius:3px;background:#dce3e7}
#malakoff-experience .mh3-decision-wire i:nth-of-type(2){width:58%}
#malakoff-experience .mh3-decision-wire small{margin-top:auto;border-top:1px solid #cbd6dc;padding-top:10px;font-size:11px}
#malakoff-experience[data-mh3-phase="3"] .mh3-decision-wire{opacity:1;visibility:visible}
#malakoff-experience[data-mh3-phase="3"] .mh9-answer{visibility:hidden!important}
#malakoff-experience[data-mh3-phase="3"] .mh9-card{background:#f7f8f8!important;border-color:#bdccd2!important;box-shadow:0 7px 20px #0b1e3512!important}
.home-page #malakoff-experience .gn94-controls .gn94-skip,
.home-page #allianz-trade-pay .gn94-controls .gn94-skip{position:absolute;width:1px;height:1px;min-height:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.home-page #malakoff-experience .gn94-controls .gn94-skip:focus-visible,
.home-page #allianz-trade-pay .gn94-controls .gn94-skip:focus-visible{position:relative;width:auto;height:auto;min-height:40px;padding:0 8px;overflow:visible;clip:auto;outline:3px solid currentColor;outline-offset:2px}
.home-page #malakoff-experience .mh3-skip{position:absolute;width:1px;height:1px;min-height:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.home-page #malakoff-experience .mh3-skip:focus-visible{position:absolute;right:28px;top:43px;width:auto;height:auto;min-height:40px;padding:0 8px;overflow:visible;clip:auto;outline:3px solid currentColor;outline-offset:2px}
.home-page.story-controls-active .sober-to-top{display:none!important}

.sober-apphalt .sober-apphalt-only{grid-column:2;grid-row:1;margin:0;align-self:center;justify-self:center;width:min(100%,440px);padding:22px;background:#f2f4fb;border-radius:16px}
.sober-apphalt .sober-apphalt-only video{display:block;width:100%;max-height:min(68svh,590px);height:auto;object-fit:contain;background:#e7e9f0;border-radius:9px}
.sober-apphalt .sober-apphalt-only figcaption{font-size:11px;line-height:1.5;color:#59677a;margin-top:9px}
@media(max-width:800px){
 #malakoff-experience .mh3-rail{min-height:44px;align-items:flex-start}
 #malakoff-experience .mh3-main{grid-template-rows:154px minmax(0,1fr)}
 #malakoff-experience .mh3-copy-stack{height:154px}
 #malakoff-experience .mh3-copy{padding-top:35px}
 #malakoff-experience .mh3-kicker{margin-bottom:9px}
 #malakoff-experience[data-mh3-phase="1"] .mh10-audit-grid,
 #malakoff-experience[data-mh3-phase="2"] .mh10-audit-grid{visibility:hidden!important}
 #malakoff-experience .mh10-audit-points{display:block;left:16px;right:16px;bottom:12px}
 #malakoff-experience .mh10-audit-points>span:first-child{display:none}
 #malakoff-experience .mh10-audit-points>.mh76-test-task{display:block;max-width:none!important;border:0!important;border-left:2px solid #d39e8f!important;border-radius:0;background:none;padding:0 0 0 8px!important;font-size:10px!important}
 #malakoff-experience .mh3-decision-wire{inset:108px 22px 20px}
 #malakoff-experience .mh3-decision-wire strong{font-size:20px}
 #malakoff-experience .mh80-problem{gap:1px}
 #malakoff-experience .mh86-accesses{margin-top:3px!important}
 #malakoff-experience .mh86-accesses>div{padding:4px 0!important}
 #malakoff-experience .mh80-problem>p{margin-top:4px!important}
 .sober-apphalt .sober-apphalt-only{grid-column:1;grid-row:auto;width:min(100%,400px)}
 #allianz-trade-pay .at84-ui--buyer,#allianz-trade-pay .at84-ui--merchant,#allianz-trade-pay .at94-morph-shell{top:calc((100% - var(--at90-lane,72px))/2 - 25px);transform-origin:center}
 #allianz-trade-pay .at84-branch{bottom:65px}
 #interface-en-contexte .c103-scene-sticky{height:calc(100svh - var(--header,66px));min-height:0}
}
@media(max-width:430px){#malakoff-experience .mh3-main{grid-template-rows:146px minmax(0,1fr)}#malakoff-experience .mh3-copy-stack{height:146px}#malakoff-experience .mh3-copy h2{font-size:28px}}
@media(max-width:699px){.c103-stage-logo{top:10px;left:12px;width:95px;height:34px;padding:4px 7px}}

/* Project links live after each story, clear of the animated stage. */
.at84-stage-inner { position: relative; }
.client-story-outro{width:min(var(--sober-width),calc(100% - 2*var(--sober-gutter)));margin:0 auto;padding:24px 0 20px;display:flex;justify-content:flex-start}
.client-story-outro .sober-case-link{width:auto}
.at94-morph-shell{pointer-events:none;z-index:0;background:#fff}
.at84-static .at84-case-study-static {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  color: #173859;
  font: 600 12px/1.4 var(--sans, Arial, sans-serif);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.at84-static .at84-case-study-static:focus-visible { outline: 3px solid #1764cc; outline-offset: 3px; }

@media (max-width: 800px) {
  /* The story itself has stage controls; the floating up button otherwise
     collides with the Allianz identity and case-study link on narrow screens. */
  .home-page.story-controls-active .sober-to-top { display: none !important; }
  .sober-scene-controls { width: 100%; bottom: 0; padding-inline: 14px; }
  .sober-scene-controls [data-workshop-step] { font-size: 10px; }
  .sober-scene-controls .v105-workshop-arrow { min-width: 36px; width: 36px; min-height: 36px; height: 36px; }
}

/* Shared client navigation: one restrained, keyboard-accessible edge rail. */
.home-page #malakoff-experience .gn94-controls,
.home-page #allianz-trade-pay .gn94-controls,
.sober-scene-controls {height:80px;min-height:80px;padding:24px 20px 0;gap:12px}
.sober-scene-controls {display:flex}
.sober-scene-controls .c103-chapter-bars {position:absolute;top:0;left:20px;right:20px;width:auto;height:24px}
.sober-scene-controls .c103-control-row {width:100%;min-height:56px}
.home-page #malakoff-experience .mh3-stage {grid-template-rows:42px minmax(0,1fr) 80px 0}
.home-page #allianz-trade-pay .at84-stage-inner {height:calc(100% - 80px)}
.client-story-position {display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0;margin-right:auto;font-size:11px;line-height:1.25}
.home-page .client-story-position .gn93-progress {display:block!important;max-width:none!important;font-size:11px!important;line-height:1.25!important;margin:0!important}
.client-story-project {display:flex;align-items:center;align-self:flex-start;min-height:24px;color:inherit;font-size:11px;font-weight:600;text-decoration:underline;text-underline-offset:3px;gap:6px}
.client-story-project:focus-visible {outline:3px solid currentColor;outline-offset:3px}
.home-page #malakoff-experience .gn94-meter.gn102-meter,
.home-page #allianz-trade-pay .gn94-meter.gn102-meter {height:24px;left:20px;right:20px;top:0}
.client-story-controls button.gn102-segment {position:relative;width:100%;height:24px;min-height:24px;min-width:0;padding:0;border:0;border-radius:0;background:transparent;overflow:visible;cursor:pointer}
.client-story-controls button.gn102-segment::before {content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:2px;background:currentColor;opacity:.28}
.client-story-controls button.gn102-segment>i {position:absolute;top:0;height:3px;left:0;right:0;background:currentColor}
.client-story-controls button.gn102-segment:focus-visible {outline:3px solid currentColor;outline-offset:1px}
.client-story-controls .gn93-buttons,.client-story-controls .mh3-controls,.c103-arrow-controls {flex:none;gap:8px}
.home-page .client-story-controls .gn93-buttons button,
.home-page .client-story-controls .mh3-controls button,
.sober-scene-controls .v105-workshop-arrow {width:40px;min-width:40px;height:40px;min-height:40px;border-radius:50%;border:1px solid currentColor;background:transparent;color:inherit}
.sober-scene-controls .c103-skip-link {display:block;position:absolute;width:1px;height:1px;min-height:0;overflow:hidden;clip-path:inset(50%);padding:0;white-space:nowrap}
.sober-scene-controls .c103-skip-link:focus-visible {width:auto;height:auto;clip-path:none;right:20px;bottom:80px;padding:8px 12px}
@media(max-width:430px){
 .home-page #malakoff-experience .gn94-controls,.home-page #allianz-trade-pay .gn94-controls,.sober-scene-controls {padding-inline:14px;gap:8px}
 .sober-scene-controls .c103-chapter-bars,.home-page #malakoff-experience .gn94-meter.gn102-meter,.home-page #allianz-trade-pay .gn94-meter.gn102-meter{left:14px;right:14px}
 .home-page .client-story-position .gn93-progress,.sober-scene-controls [data-workshop-step]{font-size:10px!important}
}

/* Keep the two neighbouring needs in the small-screen wireframe. They are
   structural labels, not competing miniature interfaces. */
@media(max-width:800px){
 #malakoff-experience[data-mh3-phase="1"] .mh10-audit-grid,
 #malakoff-experience[data-mh3-phase="2"] .mh10-audit-grid {visibility:visible!important;display:flex!important;position:absolute;top:auto!important;bottom:48px;left:16px;right:16px;height:30px;gap:8px}
 #malakoff-experience[data-mh3-phase="1"] .mh10-audit-slot,
 #malakoff-experience[data-mh3-phase="2"] .mh10-audit-slot {display:none}
 #malakoff-experience .mh10-audit-grid .mh10-audit-tile {flex:1;min-width:0;padding:7px 9px;min-height:0;height:30px;border:1px dashed #bdcbd1;background:#f6f8f9;border-radius:5px}
 #malakoff-experience .mh10-audit-grid .mh10-audit-tile strong {font-size:11px;line-height:1.2;margin:0}
 #malakoff-experience .mh10-audit-grid .mh10-audit-tile>span {display:none}
}
/* Match the wireframe grid to the animated card's measured 59% slot. */
@media(min-width:801px){
 #malakoff-experience .mh10-audit-grid{position:absolute;top:72px;bottom:54px;left:16px;right:16px;height:auto;grid-template-columns:59fr 41fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:10px}
 #malakoff-experience .mh10-audit-slot{grid-column:1;grid-row:1/3}
 #malakoff-experience .mh10-audit-tile{grid-column:2}
}
#malakoff-experience .mh10-audit-points>span:first-child{display:none}
#malakoff-experience .mh10-audit-points>.mh76-test-task{max-width:none!important;border:0!important;border-left:2px solid #b57561!important;border-radius:0;background:none;padding:0 0 0 8px!important;font-size:11px!important}
.sober-scene-controls button[data-workshop-jump][data-complete="true"]::before{background:#39633d}
.c103-lab[data-c103-backdrop="dark"] .sober-scene-controls button[data-workshop-jump][data-complete="true"]::before{background:#e6f6d7}
/* Small chapter labels need text contrast, even when the large accent title
   already passes the large-type threshold. Client accent families stay intact. */
#malakoff-experience[data-mh3-phase]:not([data-mh3-phase="0"]):not([data-mh3-phase="6"]) .mh3-kicker,
#malakoff-experience[data-mh3-phase]:not([data-mh3-phase="0"]):not([data-mh3-phase="6"]) [data-mh-view]{color:#b7372d}
#allianz-trade-pay[data-at106][data-at84-phase="1"] .at84-tag,
#allianz-trade-pay[data-at106][data-at84-phase="2"] .at84-tag{color:#086980}
