/* People, purposeful diagrams and finite motion on the original white canvas. */
:root{--story-gap:64px;--story-radius:24px;--story-motion:800ms;--story-ease:cubic-bezier(.22,1,.36,1)}
.people-story{padding-top:16px;padding-bottom:96px;background:var(--white)}
.people-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--story-gap);align-items:center}
.people-copy h2{font-size:clamp(36px,3.8vw,56px);line-height:1.1}.people-copy h2 em{color:var(--muted)}
.people-copy>p:not(.eyebrow){font-size:17px;line-height:1.75;max-width:440px;margin-top:24px}
.people-links{margin-top:32px;border-top:1px solid var(--line)}
.people-links a{display:flex;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);color:var(--navy);min-height:88px}
.people-link-number{font-size:11px;color:var(--connection-ink);align-self:flex-start;padding-top:4px}
.people-links strong{font-size:19px;font-weight:400;line-height:1.35;display:block}.people-links small{display:block;margin-top:4px;font-size:14px;color:var(--muted)}
.people-links svg{margin-left:auto;width:20px;transition:transform .2s}.people-links a:hover svg{transform:translate(4px,-2px)}.people-links a:hover strong{text-decoration:underline;text-underline-offset:5px}.people-links a:active{opacity:.8}
.people-figure{margin:0;min-width:0}.people-photo{position:relative;height:580px;border-radius:var(--story-radius);overflow:hidden;background:var(--white)}
.people-photo>img{width:100%;height:100%;object-fit:cover;object-position:65% 50%}
.photo-caption{position:absolute;bottom:24px;left:24px;right:24px;padding:24px 28px;display:flex;align-items:center;gap:24px;border:1px solid var(--line);border-radius:16px;background:var(--white)}
.photo-caption>span{font-size:48px;line-height:1;color:var(--connection-ink)}.photo-caption p{font-family:var(--heading);font-size:30px;line-height:1.15;color:var(--navy);letter-spacing:-.025em}.photo-caption em{color:var(--muted)}
.people-figure figcaption{font-size:10px;line-height:1.5;margin-top:12px;color:var(--muted)}.people-figure figcaption a:hover,.company-photo figcaption a:hover{text-decoration:underline}
.company-photo{margin-block:0 48px}.company-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:var(--story-radius)}.company-photo figcaption{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted);margin-top:16px}
.people-photo.is-revealed{animation:story-arrive var(--story-motion) var(--story-ease) both}
@keyframes story-arrive{from{transform:translateY(16px)}to{transform:translateY(0)}}

/* The journey copy remains the accessible description of each illustration. */
.service-panel{grid-template-columns:1fr 1fr;align-items:center}
.workflow{padding:0;border:0;background:var(--white);min-width:0;align-self:center}
.workflow-label{margin:0 0 8px;font-size:10px}.service-scene{border:1px solid var(--line);border-radius:16px;background:var(--white);overflow:hidden}
.service-scene svg{display:block;width:100%;height:auto;stroke-width:1.5}
.scene-outline,.scene-wire{stroke:#042f5f66}.scene-track{stroke:var(--green);stroke-width:1.5;stroke-dasharray:4 5}
.scene-paper{fill:var(--white);stroke:#042f5f66}.scene-block{fill:var(--white);stroke:none}.scene-dot{fill:#042f5f66;stroke:none}
.scene-accent{fill:var(--green);stroke:none}.scene-hub{fill:var(--navy);stroke:none}.scene-strong{stroke:var(--navy)}.scene-tick{stroke:var(--connection-ink);stroke-width:2}.scene-white{stroke:var(--white)}
.workflow ol{gap:12px;margin-top:20px}.workflow li{min-height:24px;font-size:13px;gap:12px}.workflow-number{height:24px;width:24px;border-radius:50%;font-size:9px}.workflow-connector{top:25px;left:11px;height:11px}.workflow-result{margin-top:16px;padding-top:16px;font-size:12px}
.workflow.is-revealed .scene-draw{animation:scene-trace 3s var(--story-ease) both}.workflow.is-revealed .scene-pop{transform-box:fill-box;transform-origin:center;animation:scene-appear 2.6s var(--story-ease) both}.workflow.is-revealed .workflow-number{animation:journey-node 3.2s ease-out both}.workflow li:nth-child(2) .workflow-number{animation-delay:.3s}.workflow li:nth-child(3) .workflow-number{animation-delay:.6s}
@keyframes scene-trace{0%{stroke-dashoffset:100;opacity:.3}100%{stroke-dashoffset:0;opacity:1}}
@keyframes scene-appear{0%{transform:translateY(6px);opacity:.45}50%,100%{transform:translateY(0);opacity:1}}
@keyframes journey-node{0%,100%{background:var(--white);border-color:var(--connection-line)}35%,65%{background:var(--navy);border-color:var(--navy);color:var(--white)}}

.spotlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:stretch}.spotlight-card{border-radius:24px;display:flex;flex-direction:column;min-width:0}
.spotlight-art{height:400px;min-height:0;flex:none;padding:72px 40px;background:var(--white);overflow:hidden}
.spotlight-art:before,.spotlight-art:after{display:none}.spotlight-network{position:absolute;inset:0;width:100%;height:100%;stroke:var(--connection-line);stroke-width:1;pointer-events:none}.spotlight-network circle{fill:var(--white);stroke:var(--connection-ink)}
.spotlight-signal{stroke:var(--green);stroke-width:1.3;stroke-dasharray:10 90;opacity:.75}.is-revealed .spotlight-signal{animation:spotlight-trace 3.8s var(--story-ease) both}
.spotlight-art img{width:340px;max-width:100%;height:auto;padding-block:24px;box-shadow:0 0 40px 24px var(--white)}.spotlight-copy{padding:32px;flex:1}.spotlight-copy>div{min-width:0;flex:1}.spotlight-copy p{min-height:3.2em}.spotlight-copy .text-link{min-height:44px;flex-shrink:0}
@keyframes spotlight-trace{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
.ecosystem.is-revealed .product-card:before{transform-origin:right;animation:ecosystem-branch 2.8s var(--story-ease) var(--entry-delay) both}.ecosystem.is-revealed .product-card:nth-child(even):before{transform-origin:left}
.ecosystem.is-revealed .product-node{animation:ecosystem-node 3s ease-out var(--entry-delay) both}
@keyframes ecosystem-branch{0%{transform:scaleX(.05);background:var(--green)}75%{background:var(--green)}100%{transform:scaleX(1);background:var(--connection-line)}}
@keyframes ecosystem-node{0%,100%{background:var(--white)}40%,65%{background:var(--green);box-shadow:0 0 0 5px #20b36518}}

@media(max-width:1100px){:root{--story-gap:40px}.people-photo{height:560px}.people-copy h2{font-size:44px}.photo-caption{padding:24px;left:20px;right:20px;gap:20px}.spotlight-grid{gap:24px}.spotlight-art{padding-inline:32px}.service-panel{gap:24px}}
@media(max-width:900px){:root{--story-gap:32px}.people-story{padding-bottom:64px}.people-layout{grid-template-columns:1fr 1fr}.people-copy h2{font-size:36px}.people-copy>p:not(.eyebrow){font-size:16px;margin-top:20px}.people-links{margin-top:24px}.people-links a{gap:12px;padding:16px 0}.people-links strong{font-size:17px}.people-links small{font-size:13px}.people-photo{height:550px}.photo-caption{padding:20px;gap:16px;left:16px;right:16px;bottom:16px}.photo-caption>span{font-size:36px}.photo-caption p{font-size:26px}.spotlight-art{height:340px;padding-inline:24px}.spotlight-copy{padding:24px}.ecosystem.is-revealed .product-card:before{transform-origin:top;animation-name:ecosystem-branch-mobile}}
@keyframes ecosystem-branch-mobile{0%{transform:scaleY(.05);background:var(--green)}75%{background:var(--green)}100%{transform:scaleY(1);background:var(--connection-line)}}
@media(max-width:600px){.people-story{padding-top:8px;padding-bottom:56px}.people-layout{grid-template-columns:1fr;gap:32px}.people-copy h2{font-size:40px}.people-copy>p:not(.eyebrow){max-width:none}.people-links a{min-height:80px;gap:16px}.people-links strong{font-size:18px}.people-links small{font-size:14px}.people-photo{height:420px;border-radius:20px}.people-photo>img{object-position:65% 50%}.photo-caption p{font-size:28px}.people-figure figcaption{font-size:9px}.company-photo{margin-bottom:32px}.company-photo img{border-radius:16px}.company-photo figcaption{display:block;font-size:11px}.company-photo figcaption a{display:block;margin-top:4px}.service-panel{grid-template-columns:1fr;gap:24px}.workflow ol{margin-top:20px}.workflow li{font-size:14px;min-height:28px}.workflow-number{width:28px;height:28px}.workflow-connector{left:13px;top:29px}.service-scene{max-width:380px;margin-inline:auto}.spotlight-grid{grid-template-columns:1fr;gap:24px}.spotlight-art{height:300px;padding-inline:24px}.spotlight-card{border-radius:20px}.spotlight-copy{padding:24px}.spotlight-art img{box-shadow:0 0 24px 12px var(--white)}}
@media(prefers-reduced-motion:reduce){.people-photo.is-revealed,.workflow.is-revealed .scene-draw,.workflow.is-revealed .scene-pop,.workflow.is-revealed .workflow-number,.is-revealed .spotlight-signal,.ecosystem.is-revealed .product-card:before,.ecosystem.is-revealed .product-node{animation:none}.people-links svg{transition:none}.people-links a:hover svg{transform:none}}
