/* White typographic expertise sequence; complete static chapters are the fallback. */
.expertise{--title-entry:80px;--title-exit:-64px;position:relative;padding:0;background:#fff;color:#1b1d21;scroll-margin-top:-20px}
.expertise-stories,.expertise-screen{position:relative;width:100%;margin:0}
.expertise-intro{width:min(calc(100% - var(--gutter)*2),1320px);display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:32px}
.expertise-intro h2{font-size:24px;letter-spacing:-.025em;font-weight:450}
.expertise-intro .text-link{font-size:13px;gap:15px;color:#474b52}
.expertise-intro .icon{width:18px;height:18px;color:#bd4200}
.expertise-story{position:relative;min-height:490px;display:grid;align-items:center;background:#fff}
.expertise-story+.expertise-story{border-top:1px solid #e6e5e3}
.story-content{width:min(calc(100% - var(--gutter)*2),1320px);margin-inline:auto;padding-block:60px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:center;gap:clamp(60px,10vw,180px)}
.story-summary{transform-origin:left center}
.story-summary h3{font-size:clamp(32px,3.5vw,48px);line-height:1.08;letter-spacing:-.045em;font-weight:480;max-width:13ch;text-wrap:balance}
.story-summary p{font-size:17px;line-height:1.65;color:#545860;max-width:37ch;margin-top:24px}
.story-scope h4{font-size:12px;font-weight:450;letter-spacing:.045em;color:#61656c;margin:0 0 22px}
.story-scope ul{list-style:none;padding:0;margin:0}
.story-scope li{padding:19px 0;border-top:1px solid #d8d8d5;font-size:17px;line-height:1.4;--entry:40px}
.story-scope li:nth-child(2){--entry:60px}.story-scope li:nth-child(3){--entry:80px}
.expertise-progress{display:none}
/* One full-height white stage, using native scroll timelines without a scroll
   listener, easing timer or persistent overlapping text layers. */
@supports(animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference) and (min-height:600px){
  .expertise{--stage-height:calc(100dvh - var(--header));--reel-travel:clamp(1000px,145svh,1900px)}
  .expertise-stories{height:calc(var(--stage-height) + var(--reel-travel));view-timeline-name:--expertise-reel;view-timeline-axis:block;view-timeline-inset:var(--header) 0}
  .expertise-screen{position:sticky;top:var(--header);height:var(--stage-height);overflow:clip;background:#fff;isolation:isolate}
  .expertise-intro{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:5;padding-block:clamp(24px,4svh,48px);border-bottom:1px solid #e6e5e3}
  .expertise-screen .expertise-story{position:absolute;inset:0;min-height:0;border:0;background:none;display:block}
  .expertise-story .story-content{position:absolute;inset:0;padding-block:110px 90px}
  /* Exactly one readable content group at every scroll offset. */
  .story-test .story-content{animation:copy-first 1s steps(1,end) both}
  .story-defend .story-content{animation:copy-second 1s steps(1,end) both}
  .story-govern .story-content{animation:copy-third 1s steps(1,end) both}
  .story-test .story-summary{animation:title-first 1s linear both}
  .story-defend .story-summary{animation:title-second 1s linear both}
  .story-govern .story-summary{animation:title-third 1s linear both}
  .story-test .story-scope li{animation:scope-first 1s linear both}
  .story-defend .story-scope li{animation:scope-second 1s linear both}
  .story-govern .story-scope li{animation:scope-third 1s linear both}
  .expertise-progress{display:block;position:absolute;left:max(var(--gutter),calc((100% - 1320px)/2));right:max(var(--gutter),calc((100% - 1320px)/2));bottom:clamp(28px,5svh,64px);height:2px;background:#e7e6e2}
  .expertise-progress span{display:block;width:100%;height:100%;background:#ed5a16;transform-origin:left;animation:expertise-progress 1s linear both}
  /* Timeline rules follow all shorthands at matching specificity. */
  .expertise-story .story-content,.expertise-story .story-summary,.expertise-story .story-scope li,.expertise-progress span{animation-timeline:--expertise-reel;animation-range:contain 0% contain 100%}
 }
}
@keyframes copy-first{0%{visibility:visible}31%,100%{visibility:hidden}}
@keyframes copy-second{0%{visibility:hidden}31%{visibility:visible}73%,100%{visibility:hidden}}
@keyframes copy-third{0%{visibility:hidden}73%,100%{visibility:visible}}
/* Large enough to read as deliberate motion, restrained enough to keep the
   full title and scope legible even when scrolling stops mid-transition. */
@keyframes title-first{0%,18%{transform:none}42%,100%{transform:perspective(1100px) translate3d(0,var(--title-exit),-40px) rotateX(8deg)}}
@keyframes title-second{0%,20%{transform:perspective(1100px) translate3d(0,var(--title-entry),-60px) rotateX(-8deg)}43%,62%{transform:none}84%,100%{transform:perspective(1100px) translate3d(0,var(--title-exit),-40px) rotateX(8deg)}}
@keyframes title-third{0%,62%{transform:perspective(1100px) translate3d(0,var(--title-entry),-60px) rotateX(-8deg)}85%,100%{transform:none}}
@keyframes scope-first{0%,18%{transform:none}42%,100%{transform:translate3d(calc(var(--entry) * -1),-12px,0)}}
@keyframes scope-second{0%,20%{transform:translate3d(var(--entry),12px,0)}43%,62%{transform:none}84%,100%{transform:translate3d(calc(var(--entry) * -1),-12px,0)}}
@keyframes scope-third{0%,62%{transform:translate3d(var(--entry),12px,0)}85%,100%{transform:none}}
@keyframes expertise-progress{from{transform:scaleX(.06)}to{transform:scaleX(1)}}
@media(max-width:760px){
 .expertise{--title-entry:28px;--title-exit:-24px}
 .expertise-intro{padding-block:24px;gap:18px}.expertise-intro h2{font-size:22px}.expertise-intro .text-link{font-size:11px;gap:8px}.expertise-intro .icon{width:16px;height:16px}
 .expertise-story{min-height:520px}
 .story-content{width:calc(100% - 48px);grid-template-columns:1fr;align-content:center;gap:36px;padding-block:80px 48px}
 .story-summary h3{font-size:34px;max-width:none}.story-summary p{font-size:15px;line-height:1.6;max-width:36ch;margin-top:18px}
 .story-scope h4{margin-bottom:14px;font-size:11px}.story-scope li{font-size:14px;padding-block:12px;--entry:18px}.story-scope li:nth-child(2){--entry:26px}.story-scope li:nth-child(3){--entry:34px}
}
@media(max-width:370px){.expertise-intro h2{font-size:20px}.expertise-intro .text-link{font-size:10px}.story-content{width:calc(100% - 40px);gap:26px}.story-summary h3{font-size:30px}}
@media(max-height:740px) and (min-height:600px){.expertise-screen .story-content{padding-block:80px 60px;gap:24px}.story-summary p{margin-top:12px}.story-scope li{padding-block:9px}.story-scope h4{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.expertise-story .story-content,.expertise-story .story-summary,.expertise-story .story-scope li{transform:none!important;animation:none!important}}
