.motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:96px;min-height:44px;padding:9px 14px;border:1px solid var(--control-line);border-radius:999px;background:transparent;color:var(--muted);font:500 14px/1.4 var(--sans)}
.motion-toggle:hover{color:var(--ink);background:var(--paper-soft)}
.hero-line{display:block;overflow:clip;padding-block:3px}
.hero-line>span{display:inline-block}
.motion-paused,.page-backgrounded{scroll-behavior:auto}
.motion-ready:not(.motion-paused) .button>span,.motion-ready:not(.motion-paused) .card-link>span,.motion-ready:not(.motion-paused) .text-link>span{transition:transform .2s cubic-bezier(.16,1,.3,1)}
.motion-ready:not(.motion-paused) .button:hover>span,.motion-ready:not(.motion-paused) .card-link:hover>span,.motion-ready:not(.motion-paused) .text-link:hover>span{transform:translateX(3px)}
.motion-ready:not(.motion-paused) .faq-list summary>span{transition:transform .2s}
.motion-ready:not(.motion-paused):not(.page-backgrounded) dialog[open]{animation:dialog-enter .3s cubic-bezier(.16,1,.3,1)}
@keyframes dialog-enter{from{opacity:.94;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.story-section{padding-bottom:32px}
.story-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px}
.story-heading>p{font-size:15px;color:var(--muted)}
.story-film{background:var(--ink);color:var(--paper);padding:48px;border-radius:var(--radius);overflow:clip}
.story-scene{display:grid;grid-template-columns:1fr 1.06fr;grid-template-rows:auto auto;align-items:center;gap:22px 36px;min-height:350px;padding-block:16px 32px}
.story-scene+.story-scene{border-top:1px solid var(--inverse-secondary);padding-top:46px;margin-top:18px}
.story-ready .story-scene{border:0;margin:0}
.story-type{min-width:0;grid-column:1;align-self:end;transform-origin:left center}
.story-pillar{display:block;font:600 16px/1.5 var(--sans);color:var(--film-accent);margin-bottom:18px}
.story-statement{display:block;font-size:clamp(36px,4.2vw,58px);line-height:1.05;letter-spacing:-.04em}
.story-copy{grid-column:1;align-self:start;max-width:430px}
.story-copy p{color:var(--inverse-muted);font-size:16px;line-height:1.65}
.story-copy .story-services{font-size:18px;color:var(--paper);line-height:1.5;margin-bottom:12px}
.story-visual{grid-column:2;grid-row:1/3;min-width:0;margin:0;align-self:center;color:var(--inverse-muted)}
.story-visual svg{display:block;width:100%;height:auto}
.diagram-accent{stroke:var(--film-accent);stroke-width:4}
.diagram-link{stroke:var(--inverse-muted);stroke-width:2}
.diagram-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:center;font-size:14px;line-height:1.5;color:var(--paper)}
.story-visual figcaption{font-size:14px;text-align:center;margin-top:28px;color:var(--inverse-muted)}
.story-controls{padding-top:24px;border-top:1px solid var(--inverse-secondary)}
.story-timeline{display:flex;align-items:center;gap:20px;margin-bottom:20px}
.story-track{flex:1;height:3px;background:var(--inverse-secondary);overflow:hidden}
.story-track>span{display:block;width:100%;height:100%;background:var(--film-accent);transform-origin:left;transform:scaleX(0)}
.story-time{flex-shrink:0;font-size:14px;font-variant-numeric:tabular-nums;color:var(--inverse-muted)}
.story-control-row{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
#story-toggle{min-width:134px;border-color:var(--film-accent)}
#story-toggle:disabled{cursor:default;background:var(--ink);color:var(--inverse-muted);border-color:var(--inverse-secondary)}
.story-chapters{display:flex;flex-wrap:wrap;gap:12px}
.story-chapters button{position:relative;min-height:44px;padding:10px 12px;background:none;border:0;color:var(--inverse-muted);font-size:14px;font-weight:600}
.story-chapters button[aria-pressed="true"]{color:var(--paper)}
.story-chapters button[aria-pressed="true"]::after{content:'';position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--film-accent)}
.story-film :focus-visible{outline-color:var(--film-accent)}
.story-status{margin-top:18px;color:var(--inverse-muted);font-size:14px;line-height:1.5}
.story-next{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-top:22px}
@media(max-width:900px){.story-film{padding:32px}.story-scene{gap:22px 24px;min-height:370px}.story-statement{font-size:44px}.story-copy .story-services{font-size:17px}.story-copy p{font-size:15px}.diagram-labels{gap:10px;font-size:14px}.story-next{gap:22px}.hero-question{font-size:14px;gap:10px}}
@media(max-width:720px){.story-section{padding-bottom:12px}.story-heading{gap:15px;margin-bottom:14px}.story-heading>p{font-size:14px}.motion-toggle{min-width:85px;font-size:13px;padding-inline:12px}.story-film{padding:28px 24px}.story-scene{display:flex;flex-direction:column;align-items:stretch;gap:20px;min-height:0;padding-block:6px 26px}.story-pillar{font-size:15px;margin-bottom:16px}.story-statement{font-size:44px}.story-copy{max-width:480px}.story-copy p{font-size:16px}.story-copy .story-services{font-size:17px}.story-visual{width:100%;max-width:470px;margin:2px auto 0}.story-visual figcaption{margin-top:20px}.story-control-row{gap:16px}.story-chapters{gap:4px}.story-chapters button{padding-inline:10px;font-size:13px}.story-chapters button[aria-pressed="true"]::after{left:10px;right:10px}.story-status{font-size:14px}.story-time{font-size:13px}.story-next{grid-template-columns:1fr;gap:0;padding-top:16px}.hero-question{font-size:15px;padding-block:15px;border-bottom:1px solid var(--line)}.hero-question:last-child{border:0}}
@media(max-width:370px){.story-film{padding-inline:20px}.story-statement{font-size:38px}.story-chapters button{padding-inline:9px;font-size:12px}.diagram-labels{gap:6px}.story-copy .story-services{font-size:16px}}
@media(prefers-reduced-motion:reduce){.hero-line{overflow:visible}.motion-ready .button>span,.motion-ready .text-link>span,.motion-ready .card-link>span{transition:none;transform:none}.motion-ready dialog[open]{animation:none}.story-scene,.story-type{transform:none}}
.motion-paused dialog[open],.page-backgrounded dialog[open]{animation:none}
.motion-paused .button>span,.motion-paused .text-link>span,.motion-paused .card-link>span{transition:none;transform:none}
