/* A visible reading rhythm after the finish panels. Media stays full-frame. */
:root{--flow-top:112px}
.narrative-stack{isolation:isolate}
.story-scrolling .story-chapter-stack{min-width:0}
.story-scrolling .reading-copy>.narrative-stack{display:flex;flex-direction:column;gap:28px;margin-top:35px}
.story-scrolling .story-scroll-chapter{position:relative;padding:28px;background:#faf9f5;border:1px solid #d3c7a9;min-width:0;scroll-margin-top:max(0px,calc(var(--flow-top) - var(--flow-page-offset,112px)));display:flex;flex-direction:column;justify-content:center}
.story-scrolling .story-scroll-chapter .chapter-index{display:block;color:#6d5729;font-size:10px;letter-spacing:.14em;margin-bottom:25px;line-height:1.6}
.story-scrolling .story-scroll-chapter h2{font-size:clamp(28px,2.6vw,40px);margin:0 0 22px}
.story-scrolling .story-scroll-chapter p{font-size:16px;line-height:1.8;margin:0}
.story-scrolling .story-scroll-chapter.is-current{border-top-color:#8c6828;box-shadow:inset 0 3px #8c6828}
.story-scene-meter{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:16px 20px 19px;background:#111413;color:#ece8df;font-size:9px;line-height:1.5;letter-spacing:.1em}
.story-scene-meter [data-scene-count]{color:#d8be82;font-variant-numeric:tabular-nums;white-space:nowrap}
.scene-track{display:block;grid-column:1/-1;background:#55584f;height:2px}
.scene-track>span{display:block;height:100%;width:var(--scene-progress,33.333%);background:#d8be82;transition:width .4s ease}
.home-evolved .home-scroll-chapters{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:35px 7%;align-items:start}
.home-evolved .home-scroll-chapters>.section-heading{display:block;align-self:start;margin:0}
.home-evolved .home-scroll-chapters>.section-heading h2{font-size:clamp(39px,4.7vw,65px);margin-bottom:26px}
.home-evolved .home-scroll-chapters>.section-heading>p{margin-top:24px;font-size:16px;line-height:1.8;max-width:490px}
.home-evolved .home-scroll-chapters>.section-tail{grid-column:1/-1;margin-top:8px}
.home-evolved .home-scroll-chapters .narrative-stack{display:flex;flex-direction:column;gap:24px;margin:0;min-width:0}
.home-evolved .story-row.narrative-card{background:#faf9f5;border:1px solid #c8b991;padding:32px;min-height:280px;grid-template-columns:34px 1fr 26px;gap:18px;align-content:center}
.home-evolved .story-row.narrative-card:nth-child(even){background:#141716;color:#faf9f5;border-color:#90723a}
.home-evolved .story-row.narrative-card:nth-child(even) :is(h3,.story-summary){color:#faf9f5}
.home-evolved .story-row.narrative-card:nth-child(even) .eyebrow,.home-evolved .story-row.narrative-card:nth-child(even) .story-number{color:#d8be82}
.home-evolved .story-row.narrative-card h3{font-size:clamp(29px,3vw,43px);line-height:1.12;margin:15px 0 23px}
.home-evolved .story-row.narrative-card .eyebrow{font-size:9px}
.home-evolved .story-row.narrative-card .story-summary{font-size:15px;line-height:1.7}
.home-evolved .client-journey .narrative-card{display:flex;flex-direction:column;justify-content:center;padding:32px;min-height:280px;background:#faf9f5;border:1px solid #c8b991;min-width:0}
.home-evolved .client-journey .narrative-card>span{font-size:11px;letter-spacing:.12em}
.home-evolved .client-journey .narrative-card h3{font-size:clamp(30px,3vw,43px);max-width:none;margin:22px 0}
.home-evolved .client-journey .narrative-card p{font-size:16px;line-height:1.8}
.home-evolved .client-journey .narrative-card.is-current{border-color:#8c6828;box-shadow:inset 4px 0 #8c6828}
.home-evolved .narrative-card:focus-visible{outline:3px solid var(--green);outline-offset:4px}
/* Reveal the content, keeping the surface continuous and the text fully readable. */
body.flow-ready [data-flow-reveal]{opacity:1!important;transform:translateY(0)!important;transition:transform var(--reveal-duration) var(--reveal-ease)!important}
body.flow-ready [data-flow-reveal].flow-waiting{transform:translateY(var(--reveal-distance))!important}
body.flow-ready [data-flow-reveal].flow-entered{transform:translateY(0)!important}
body.flow-ready .home-founder-copy blockquote{border-left-width:3px}
body.flow-ready .home-institute{position:relative}
body.flow-ready .home-institute::after{content:'';display:block;position:absolute;left:0;right:0;bottom:0;height:3px;background:#b99342;transform:scaleX(1);transform-origin:left;transition:transform .9s ease;pointer-events:none}
body.flow-ready .home-institute.flow-waiting::after{transform:scaleX(0)}
@media(min-width:760px) and (min-height:650px) and (prefers-reduced-motion:no-preference){
 .story-scrolling .story-reading-flow{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:4%}
 .story-scrolling .story-reading-flow .story-flow-copy{max-width:none;margin:0}
 .story-scrolling .story-reading-flow>.story-flow-media.flow-pin-ready{position:sticky;top:var(--flow-top)}
 .story-scrolling .story-reading-flow>.story-flow-media>img{max-height:calc(100svh - var(--flow-top) - 160px)}
 .story-scrolling .story-reading-flow>.story-flow-media>video{height:calc(100svh - var(--flow-top) - 160px)}
 .story-scrolling .story-reading-flow .reception-compare{max-height:calc(100svh - var(--flow-top) - 235px)}
 .narrative-stack.flow-stack-ready:not(.flow-keyboard)>.narrative-card{position:sticky;top:var(--flow-top);height:var(--flow-card-height);min-height:0}
 .story-scrolling .narrative-stack{--flow-card-height:min(490px,calc(100svh - var(--flow-top) - 30px))}
 .home-evolved .narrative-stack{--flow-card-height:min(360px,calc(100svh - var(--flow-top) - 30px))}
 .narrative-stack.flow-stack-ready{gap:55px!important;padding-bottom:35px}
 .home-evolved .home-scroll-chapters>.section-heading.flow-pin-ready{position:sticky;top:var(--flow-top)}
 .home-evolved .home-notes>div:first-child.flow-pin-ready{position:sticky;top:var(--flow-top);align-self:start}
}
@media(min-width:760px) and (max-width:999px){
 .story-scrolling .story-scroll-chapter{padding:23px}
 .story-scrolling .story-scroll-chapter h2{font-size:29px}
 .story-scrolling .story-scroll-chapter p{font-size:15px}
 .story-scrolling .story-flow-copy .standfirst{font-size:21px}
 .home-evolved .home-scroll-chapters{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px 5%}
 .home-evolved .story-row.narrative-card{padding:25px 20px;grid-template-columns:22px 1fr 19px;gap:12px}
 .home-evolved .story-row.narrative-card h3{font-size:29px}
}
@media(max-width:759px){
 .story-scrolling .story-scroll-chapter{padding:25px 22px}
 .story-scrolling .story-scroll-chapter h2{font-size:31px}
 .story-scrolling .reading-copy>.narrative-stack{gap:22px;margin-top:25px}
 .story-scene-meter{font-size:8px;padding:15px 16px}
 .home-evolved .home-scroll-chapters{display:block}
 .home-evolved .home-scroll-chapters>.section-heading{margin-bottom:30px}
 .home-evolved .home-scroll-chapters>.section-heading h2{font-size:39px}
 .home-evolved .home-scroll-chapters .narrative-stack{gap:22px}
 .home-evolved .story-row.narrative-card{min-height:0;padding:27px 22px;grid-template-columns:24px 1fr 18px;gap:12px}
 .home-evolved .story-row.narrative-card h3{font-size:29px}
 .home-evolved .client-journey .narrative-card{min-height:0;padding:27px 25px}
 .home-evolved .client-journey .narrative-card h3{font-size:32px}
 .home-evolved .home-scroll-chapters>.section-tail{margin-top:30px}
 body.flow-ready [data-flow-reveal].flow-waiting{transform:translateY(var(--reveal-distance))!important}
}
@media(prefers-reduced-motion:reduce){
 body.flow-ready [data-flow-reveal]{transform:none!important;transition:none!important}
 .scene-track>span,.home-institute::after{transition:none!important;transform:none!important}
 .narrative-stack>.narrative-card,.flow-pin-ready{position:relative!important;top:auto!important;height:auto!important}
}

/* A single material surface on each panel, with no repeated image cut-outs. */
.home-evolved .narrative-card{position:relative;isolation:isolate}
.home-evolved .narrative-card::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--surface-light) var(--surface-light-position)/var(--surface-light-size) no-repeat;opacity:.16;filter:var(--surface-light-filter)}
.home-evolved .story-row.narrative-card:nth-child(even)::before{background:var(--surface) center/cover no-repeat;opacity:var(--surface-dark-opacity);filter:var(--surface-dark-filter)}
