/* The client stages stay adjacent. Extra reading belongs to each client's
   coloured surface and expands in normal flow, outside the sticky scene. */
.sober-home #malakoff-experience { --story-end-bg:#172b48; --story-end-ink:#f4f7fc; --story-end-muted:#c5d4e5; }
.sober-home #interface-en-contexte { --story-end-bg:#153b2a; --story-end-ink:#f3f8ef; --story-end-muted:#c6dac4; }
.sober-home #allianz-trade-pay { --story-end-bg:#e1ebef; --story-end-ink:#173651; --story-end-muted:#4b6272; }
.sober-home #malakoff-experience,
.sober-home #interface-en-contexte,
.sober-home #allianz-trade-pay { background:var(--story-end-bg); border:0; }
.sober-home #malakoff-experience .mh-fallback { color:var(--story-end-ink); padding-block:32px; }
.sober-home #malakoff-experience .mh-fallback h2 { margin-block:8px 12px; }
.sober-home #malakoff-experience .mh-fallback .btn { margin-top:12px; }
html:not(.has-js) .sober-home #malakoff-experience .mh-fallback { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:32px; }
.sober-home #malakoff-experience .mh-fallback h2,
.sober-home #malakoff-experience .mh-fallback a { color:var(--story-end-ink); }
.sober-home #malakoff-experience .mh-fallback h2 em { color:#ff9b7f; }
.sober-home #malakoff-experience .mh-fallback p,
.sober-home #malakoff-experience .mh-fallback figcaption { color:var(--story-end-muted); }
.sober-home #cetelem-atelier:not(.c103-motion-on) .client-story-outro,
.sober-home #allianz-trade-pay:not([data-at84-ready]) .client-story-outro { display:flex; }
.sober-home #cetelem-atelier:not(.c103-motion-on) .client-story-outro a { color:var(--story-end-ink); }
.sober-home #interface-en-contexte .c103-motion-on .c103-intro {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip-path:inset(50%); white-space:nowrap; opacity:1;
}
.sober-home #interface-en-contexte .c103-intro h2,
.sober-home #interface-en-contexte .c103-reading,
.sober-home #interface-en-contexte .sober-inline-link { color:var(--story-end-ink); }
.sober-home #interface-en-contexte .c103-intro p,
.sober-home #interface-en-contexte .c103-intro .c103-eyebrow,
.sober-home #interface-en-contexte .c103-source-note,
.sober-home #interface-en-contexte .c103-reading-grid article > span,
.sober-home #interface-en-contexte .sober-cetelem-end p,
.sober-home #interface-en-contexte .sober-kicker { color:var(--story-end-muted); }
.sober-home #interface-en-contexte .c103-client-logo { background:#fff; padding:4px 8px; border-radius:5px; }
.sober-home #malakoff-experience:not(.mh3-reduced) .mh3-stage,
.sober-home #interface-en-contexte .c103-motion-on .c103-scene-sticky,
.sober-home #allianz-trade-pay[data-at84-ready] .at84-stage {
  top:var(--story-header,var(--header,76px));
  height:calc(100svh - var(--story-header,var(--header,76px))); min-height:0;
}
.sober-home .story-reading-zone,
.sober-home #malakoff-experience .mh-after,
.sober-home #cetelem-contexte {
  box-sizing:border-box; width:100%; max-width:none; margin:0; padding:12px clamp(22px,4vw,64px) 20px;
  background:var(--story-end-bg); color:var(--story-end-ink); border:0;
  display:flex; align-items:flex-start; flex-wrap:wrap; gap:8px 32px;
}
.sober-home .story-reading-zone details { flex:1 1 65%; min-width:0; width:auto; margin:0; padding:0; border:0; color:inherit; }
.sober-home .story-reading-zone details summary {
  display:list-item; width:fit-content; min-height:44px; padding:11px 0; box-sizing:border-box;
  font:500 12px/22px var(--sans,Arial,sans-serif); color:var(--story-end-muted); cursor:pointer;
  text-decoration:none; text-underline-offset:4px;
}
.sober-home .story-reading-zone summary:hover { color:var(--story-end-ink); text-decoration:underline; }
.sober-home .story-reading-zone a:focus-visible,
.sober-home .story-reading-zone summary:focus-visible { outline:2px solid currentColor; outline-offset:4px; border-radius:2px; }
.sober-home .story-reading-zone > a.sober-inline-link { min-height:44px; margin:0; font-size:12px; color:var(--story-end-muted); }
.sober-home #malakoff-experience .mh-after .mh3-transcript,
.sober-home #malakoff-experience .mh-after .mh3-transcript h3,
.sober-home #malakoff-experience .mh-after .mh3-transcript summary { color:var(--story-end-ink); }
.sober-home #malakoff-experience .mh-after p,
.sober-home #malakoff-experience .mh-after .mh3-transcript li { color:var(--story-end-muted); }
.sober-home .story-reading-zone .c103-reading-grid p,
.sober-home .story-reading-zone .c103-source-note,
.sober-home .story-reading-zone .c103-reading-grid article > span { color:var(--story-end-muted); }
.sober-home #interface-en-contexte .c103-reading-grid img {
  width:min(100%,240px); height:auto; max-height:none; background:white; border-radius:8px;
}
.sober-home #allianz-trade-pay .story-reading-zone .at84-static {
  position:static!important; width:100%!important; height:auto!important; margin:0!important;
  padding:18px 0 20px!important; clip:auto!important; clip-path:none!important;
  overflow:visible!important; white-space:normal!important;
}
.sober-home #allianz-trade-pay .story-reading-zone .at84-source { width:100%; max-width:none; padding:0; margin:0; color:var(--story-end-muted); }
.sober-home #malakoff-experience > .sober-next,
.sober-home #allianz-trade-pay > .sober-next { display:none; }

/* All three controls have the same DOM order and a vertical chapter axis. */
.sober-home #malakoff-experience .story-navigation,
.sober-home #allianz-trade-pay .story-navigation,
.sober-home #interface-en-contexte .story-navigation {
  position:absolute; inset:0; z-index:5; transform:none; width:100%; height:100%; min-height:0;
  display:block; padding:0; margin:0; border:0; border-radius:0; box-shadow:none;
  background:transparent; color:inherit; pointer-events:none;
}
.story-navigation > .story-vertical-rail {
  position:absolute; top:50%; right:12px; transform:translateY(-50%);
  display:flex; flex-direction:column; align-items:center; gap:6px; width:40px; pointer-events:auto;
}
.sober-home :is(#malakoff-experience,#allianz-trade-pay) .story-navigation .story-vertical-rail .gn94-meter.gn102-meter,
.sober-home .story-navigation .story-vertical-rail .c103-chapter-bars {
  position:static; inset:auto; transform:none; display:flex; flex-direction:column; align-items:center;
  width:36px; height:auto; gap:0; border:0; background:none;
}
.story-navigation .story-vertical-rail .gn94-meter > span { display:none; }
.sober-home .story-navigation .story-vertical-rail button.gn102-segment,
.sober-home .story-navigation .story-vertical-rail button[data-workshop-jump] {
  display:block; position:relative; width:36px; min-width:36px; height:28px; min-height:28px;
  flex:none; padding:0; border:0; border-radius:4px; box-shadow:none; background:transparent; color:inherit;
}
.sober-home .story-navigation .story-vertical-rail button.gn102-segment > i { display:none; }
.sober-home .story-navigation .story-vertical-rail button.gn102-segment::before,
.sober-home .story-navigation .story-vertical-rail button[data-workshop-jump]::before {
  content:""; position:absolute; top:5px; bottom:5px; left:16px; right:auto; width:3px; height:auto;
  border-radius:3px; background:currentColor; opacity:.22; transform:none;
  transition:opacity .18s, height .18s;
}
.sober-home .story-navigation .story-vertical-rail button[aria-current]::before { opacity:1; }
@media(hover:hover) { .sober-home .story-navigation .story-vertical-rail button:hover::before { opacity:.75; } }
.sober-home .story-navigation .story-vertical-rail > button.client-story-arrow {
  display:flex; align-items:center; justify-content:center; width:40px; min-width:40px; height:40px; min-height:40px;
  padding:0; border:1px solid transparent; background:transparent; color:inherit; border-radius:50%;
}
.story-vertical-rail > .client-story-arrow svg { transform:rotate(90deg); width:20px; height:20px; }
.sober-home .story-navigation button:focus-visible { outline:2px solid currentColor; outline-offset:1px; }
.sober-home .story-navigation > .client-story-position {
  position:absolute; left:clamp(22px,4vw,64px); right:68px; bottom:8px; min-height:44px;
  display:flex; flex-direction:row; align-items:center; justify-content:space-between; gap:16px;
  margin:0; pointer-events:auto;
}
.sober-home .story-navigation .client-story-position .gn93-progress,
.sober-home .story-navigation .client-story-position [data-workshop-step] {
  max-width:40ch!important; color:inherit; opacity:.78; font-size:11px!important; font-weight:400;
  line-height:1.4!important; font-variant-numeric:tabular-nums;
}
.sober-home .story-navigation .client-story-project { min-height:44px; flex:none; align-self:center; margin:0; color:inherit; font-size:13px!important; }
.story-project-direction { width:10px; height:10px; flex:none; fill:currentColor; transform:rotate(-45deg); }
.sober-home #malakoff-experience .mh3-stage { grid-template-rows:42px minmax(0,1fr) 48px 0; }
.sober-home #allianz-trade-pay .at84-stage-inner { height:calc(100% - 56px); padding-right:68px; }
.sober-home #interface-en-contexte .c103-scene-sticky { --client-rail-height:56px; }
.sober-home #interface-en-contexte .c103-scene-sticky iframe { right:40px; width:calc(100% - 40px); }
.sober-home #interface-en-contexte .story-navigation { color:#294b34; }
.sober-home #interface-en-contexte [data-c103-backdrop="dark"] .story-navigation { color:#f3f8ef; }
.sober-home #interface-en-contexte [data-c103-backdrop="dark"] .c103-scene-sticky { background:#153b2a; }
.sober-home #interface-en-contexte [data-c103-backdrop="light"] .c103-scene-sticky { background:#f5f8f4; }
.sober-home .story-navigation .gn94-skip:focus-visible,
.sober-home .story-navigation .c103-skip-link:focus-visible {
  position:absolute; left:22px; right:auto; top:8px; bottom:auto; width:auto; height:auto; min-height:44px;
  padding:10px 14px; background:#fff; color:#182e45; clip:auto; clip-path:none; z-index:8; pointer-events:auto;
}
.sober-home .gn99-back-top,.sober-home .sober-to-top { display:none!important; }
.sober-home .gn99-footer-top { display:inline-flex; align-items:center; min-height:44px; padding:0; border:0; background:none; color:inherit; font:inherit; text-decoration:underline; text-underline-offset:4px; }

/* A measured outcome, scoped to the reimbursement topic, not a generic CSAT. */
.sober-home #malakoff-experience .mh-outcome { display:flex; align-items:center; gap:16px; max-width:420px; margin-top:22px; padding:15px 16px; border:1px solid #ffffff35; border-radius:12px; background:#ffffff08; color:#fff; }
.sober-home #malakoff-experience .mh-outcome > strong { flex:none; font:600 46px/1 var(--sans,Arial,sans-serif); letter-spacing:-.055em; color:#ffad92; white-space:nowrap; }
.sober-home #malakoff-experience .mh-outcome > strong > span { font-size:.6em; letter-spacing:-.025em; }
.sober-home #malakoff-experience .mh-outcome p { margin:0; color:inherit; font:400 14px/1.4 var(--sans,Arial,sans-serif); }
.sober-home #malakoff-experience .mh-outcome small { display:block; margin-top:5px; font:400 14px/1.4 var(--sans,Arial,sans-serif); color:#c5d4e5; }
.sober-home #malakoff-experience.mh3-reduced .mh3-transcript .mh-outcome { display:none; }

@media(max-width:800px) {
  html:not(.has-js) .sober-home #malakoff-experience .mh-fallback { grid-template-columns:1fr; gap:24px; }
  .sober-home #malakoff-experience .mh3-copy { padding-top:12px; }
  .sober-home #malakoff-experience .mh3-main { grid-template-rows:174px minmax(0,1fr); }
  .sober-home #malakoff-experience .mh3-copy-stack { height:174px; padding-right:22px; }
  .sober-home #malakoff-experience .mh-outcome { gap:12px; padding:9px 11px; margin-top:12px; max-width:calc(100% - 22px); border-radius:10px; }
  .sober-home #malakoff-experience .mh-outcome > strong { font-size:34px; }
  .sober-home #malakoff-experience .mh-outcome p { font-size:14px; line-height:1.4; }
  .sober-home #malakoff-experience .mh-outcome small { margin-top:6px; font-size:14px; }
  .sober-home #malakoff-experience .mh3-visual { width:calc(100% - 30px); justify-self:start; }
  .story-navigation > .story-vertical-rail { right:1px; width:32px; }
  .sober-home .story-navigation .story-vertical-rail > button.client-story-arrow { display:none; }
  .sober-home :is(#malakoff-experience,#allianz-trade-pay) .story-navigation .story-vertical-rail .gn94-meter.gn102-meter,
  .sober-home .story-navigation .story-vertical-rail .c103-chapter-bars { width:32px; }
  .sober-home .story-navigation .story-vertical-rail button.gn102-segment,
  .sober-home .story-navigation .story-vertical-rail button[data-workshop-jump] { width:32px; min-width:32px; height:28px; min-height:28px; }
  .sober-home .story-navigation .story-vertical-rail button.gn102-segment::before,
  .sober-home .story-navigation .story-vertical-rail button[data-workshop-jump]::before { left:14px; }
  .sober-home .story-navigation > .client-story-position { left:18px; right:38px; bottom:7px; gap:12px; }
  .sober-home .story-navigation .client-story-position .gn93-progress,
  .sober-home .story-navigation .client-story-position [data-workshop-step] { max-width:23ch!important; font-size:10px!important; }
  .sober-home #allianz-trade-pay[data-at106] .at84-stage-inner { width:100%; max-width:none; margin-inline:0; padding-right:38px; padding-left:18px; }
  .sober-home #allianz-trade-pay .at86-chapter-label { left:18px; right:38px; }
  .sober-home #interface-en-contexte .c103-scene-sticky iframe { right:30px; width:calc(100% - 30px); }
  .sober-home .story-reading-zone,
  .sober-home #malakoff-experience .mh-after,
  .sober-home #cetelem-contexte { padding:6px 22px 12px; gap:0 18px; }
  .sober-home .story-reading-zone details { flex-basis:100%; }
  .sober-home .story-reading-zone .c103-reading-grid { padding-top:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .story-navigation { display:none!important; }
  .sober-home .story-reading-zone details summary { cursor:default; }
}
@media(max-width:360px) {
  .sober-home #malakoff-experience .mh3-main { grid-template-rows:188px minmax(0,1fr); }
  .sober-home #malakoff-experience .mh3-copy-stack { height:188px; }
  .sober-home #malakoff-experience .mh3-copy .mh3-intro { font-size:13px; line-height:1.45; }
}
/* On the smallest portrait screens the frame already expresses the short
   explanatory sentence. Keep that sentence available to assistive technology
   and in the transcript, and prioritise readable UI over a reduced miniature. */
@media(max-width:360px) and (max-height:720px) {
  .sober-home #allianz-trade-pay[data-at106] .at84-stage-inner { grid-template-rows:112px minmax(0,1fr); }
  .sober-home #allianz-trade-pay[data-at106] .at84-beat h3 { font-size:25px; margin-block:6px; }
  .sober-home #allianz-trade-pay[data-at106] .at84-beat > p {
    position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap;
  }
}
@media print {
  .story-navigation { display:none!important; }
  .sober-home .story-reading-zone { background:#fff; color:#182e45; }
}
