/* Expanded brand experience — builds on the approved blue-and-white palette. */
[hidden]{display:none!important}
.site-header{position:sticky;top:0;height:98px;backdrop-filter:blur(18px);background:rgba(255,255,255,.94);transition:box-shadow .25s}
.site-header.scrolled{box-shadow:0 6px 24px rgba(24,47,80,.06)}
.reading-progress{position:absolute;bottom:-1px;left:0;right:0;height:2px;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:var(--blue);transform:scaleX(0);transform-origin:left;will-change:transform}
.site-header nav{gap:26px}
.site-header nav a[aria-current="location"]:not(.nav-contact){color:var(--blue)}
.site-header nav a[aria-current="location"]:not(.nav-contact)::after{content:'';height:2px;position:absolute;left:0;right:0;bottom:-9px;background:var(--blue)}
.hero{padding-bottom:82px}
.hero-copy,.hero-portrait{min-width:0}
.hero-copy{animation:enter-up .75s .05s both}
.hero-portrait{animation:enter-up .85s .15s both;isolation:isolate}
.hero-portrait::before{z-index:0;pointer-events:none}
.portrait-frame{position:relative;z-index:1}
.portrait-frame img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.hero-portrait:hover .portrait-frame img{transform:scale(1.035)}
.hero-portrait figcaption{position:relative;z-index:1}
.portrait-note{position:absolute;z-index:2;bottom:99px;left:-29px;background:white;padding:17px 24px;border-left:3px solid #6e92c9;box-shadow:0 10px 35px rgba(24,47,80,.11);line-height:1.5;transform:rotate(-2deg);transition:transform .4s}
.portrait-note span{display:block;font-size:14px;color:var(--ink)}
.portrait-note span:first-child{font-weight:600}
.portrait-note span:last-child{color:var(--body)}
.hero-portrait:hover .portrait-note{transform:rotate(0deg) translateY(-4px)}
.brand-statement{border-block:1px solid var(--line);background:#f7f9fc}
.brand-statement-inner{display:grid;grid-template-columns:repeat(3,1fr)}
.brand-statement a{display:flex;align-items:center;gap:22px;font-family:var(--serif);font-size:27px;color:var(--ink);padding:31px 25px;transition:color .25s,background .25s;line-height:1.3}
.brand-statement a:first-child{padding-left:0}
.brand-statement a+a{border-left:1px solid var(--line)}
.brand-statement a span{font-size:12px;font-family:var(--sans);letter-spacing:.06em;color:#8c9cb2}
.brand-statement a:hover{color:var(--blue);background:#eaf0f9}
.about{padding-bottom:65px}
.perspective{padding:38px 0 60px;border-top:1px solid var(--line)}
.perspective-top{display:flex;justify-content:space-between;align-items:center;gap:75px}
.perspective h2{font-size:30px;line-height:1.25}
.perspective-top>p{max-width:490px;font-size:16px}
.industry-list{display:grid;grid-template-columns:repeat(5,1fr);margin-top:35px;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.industry-list span{font-size:14px;color:#4f6584;padding:20px 12px;text-align:center;background:#fafbfd;transition:background .25s,color .25s}
.industry-list span+span{border-left:1px solid var(--line)}
.industry-list span:hover{background:var(--ink);color:white}
.expertise{padding-bottom:90px}
.solution-explorer{display:grid;grid-template-columns:.82fr 1.6fr;gap:34px;align-items:start}
.solution-tabs{display:flex;flex-direction:column;gap:9px}
.solution-tab{display:grid;grid-template-columns:27px 1fr 20px;align-items:center;gap:15px;background:transparent;border:1px solid transparent;border-bottom-color:#d6dfeb;text-align:left;padding:27px 20px;color:var(--body);font-size:23px;line-height:1.3;letter-spacing:-.03em;transition:background .25s,color .25s,border-color .25s;border-radius:4px}
.solution-tab[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.solution-tab:hover:not([aria-selected="true"]){background:#e7edf6;color:var(--ink)}
.tab-number{font-size:12px;letter-spacing:.06em;opacity:.7;align-self:start;padding-top:5px}
.tab-indicator{font-size:25px;font-weight:400;opacity:.8;justify-self:end}
.solution-panels{background:#fff;border:1px solid #dae3ef;border-radius:5px;overflow:hidden;min-width:0}
.solution-panel{padding:35px 42px 29px;min-height:473px;position:relative}
.panel-kicker{display:flex;justify-content:space-between;gap:20px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#73849d;margin-bottom:31px}
.solution-panel h3{font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.2;letter-spacing:-.025em;margin-bottom:22px}
.solution-panel h3 em{font-style:normal;color:var(--blue)}
.solution-panel>p{max-width:530px;font-size:16px;line-height:1.8}
.solution-list{list-style:none;padding:0;margin:22px 0 27px;display:grid;gap:8px;font-size:15px;color:#415776}
.solution-list li{display:flex;gap:13px;align-items:baseline}
.solution-list li::before{content:'';width:4px;height:4px;flex-shrink:0;background:#7093c5;align-self:center;transform:rotate(45deg)}
.solution-outcome{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:23px;align-items:baseline}
.solution-outcome>span{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#7a8ca5;flex-shrink:0}
.solution-outcome>p{font-size:14px;color:var(--ink)}
.selected-work{background:var(--ink);color:#becde2;overflow:hidden;padding-block:88px}
.selected-work h2{color:#fff;font-size:47px}
.selected-work h2 em{color:#a7c3ec}
.selected-work .eyebrow{color:#a7bfdf}
.selected-work .section-intro{color:#bbcbe1;max-width:310px}
.case-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-bottom:1px solid #405775;margin-bottom:41px}
.case-tabs button{background:transparent;color:#acbdd6;border:0;border-bottom:2px solid transparent;padding:20px 15px;text-align:left;font-size:15px;display:flex;align-items:center;gap:16px;transition:color .25s,background .25s,border-color .25s}
.case-tabs button:first-child{padding-left:0}
.case-tabs button span{font-size:12px;opacity:.65}
.case-tabs button:hover{color:#fff;background:rgba(255,255,255,.03)}
.case-tabs button[aria-selected="true"]{color:#fff;border-bottom-color:#99bde9}
.case-panel{display:grid;grid-template-columns:1fr 1fr;gap:70px;min-height:354px}
.case-scale{display:flex;flex-direction:column;align-items:flex-start;padding:15px 0 30px;position:relative;min-width:0}
.scale-label{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#97aecc}
.scale-number{font-family:var(--serif);font-size:clamp(80px,8.5vw,122px);line-height:1.15;letter-spacing:-.055em;color:#fff;margin-top:13px}
.scale-number.scale-wide{font-size:clamp(67px,7.25vw,103px)}
.scale-wide>span{color:#8baedf;font-size:.7em;vertical-align:top;line-height:1.45}
.scale-unit{font-size:16px;color:#b7cbe6;margin-top:1px}
.scale-levels{display:flex;gap:0;flex-wrap:wrap;margin-top:auto;padding-top:33px}
.scale-levels span{font-size:12px;color:#aec2df;padding:0 15px;border-left:1px solid #435d7f;line-height:1.5}
.scale-levels span:first-child{padding-left:0;border:0}
.case-copy{padding:11px 0}
.case-copy .eyebrow{font-size:12px;margin-bottom:18px}
.case-copy h3{font-family:var(--serif);font-weight:400;color:#fff;font-size:35px;line-height:1.2;letter-spacing:-.02em;margin-bottom:18px}
.case-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#c0cee2;max-width:490px}
.case-focus{display:flex;gap:22px;border-top:1px solid #385372;padding-top:18px;margin-top:24px;align-items:baseline}
.case-focus>span{font-size:12px;color:#8fa9cc;flex-shrink:0}
.case-focus>p{font-size:14px;line-height:1.7}
.case-copy .text-link{color:#fff;border-color:#7995ba;margin-top:23px}
.case-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:33px;margin-top:17px;border-top:1px solid #3b5372}
.case-bottom>p{font-size:12px;color:#94aac7;max-width:620px;line-height:1.7}
.case-controls{display:flex;gap:9px;align-items:center;flex-shrink:0}
.case-position{font-size:12px;font-variant-numeric:tabular-nums;color:#9eb5d4;letter-spacing:.07em;margin-right:12px}
.case-controls button{border:1px solid #516c90;border-radius:3px;color:#e8f0fc;background:transparent;padding:10px 14px;font-size:12px;line-height:1.4;transition:background .2s}
.case-controls button:hover{background:#355576}
.panel-enter{animation:panel-enter .38s ease both}
.approach-intro{position:sticky;top:140px;align-self:start}
.approach-steps{border-left:1px solid #d7e0ed;padding-left:30px}
.approach-step{position:relative;padding-block:28px}
.approach-step::before{content:'';position:absolute;left:-36px;top:34px;width:11px;height:11px;border:2px solid white;background:#94acd0;border-radius:50%;box-shadow:0 0 0 1px #d9e2ef;transition:background .3s,box-shadow .3s}
.approach-step:first-child::before{top:7px}
.approach-step:hover::before{background:var(--blue);box-shadow:0 0 0 5px #e7eef8}
.approach-step h3{font-size:24px;font-family:var(--serif);font-weight:400}
.partnerships{background:#f3f6fa;border-block:1px solid #e2e8f1}
.partnership-layout{display:grid;grid-template-columns:.94fr 1.3fr;gap:85px;align-items:start}
.partnership-intro>p:not(.eyebrow){max-width:375px;margin-top:25px;font-size:16px}
.partnership-intro .text-link{margin-top:25px}
.engagement-list{border-top:1px solid #cdd9e8}
.engagement{border-bottom:1px solid #cdd9e8;transition:background .3s}
.engagement summary{list-style:none;display:grid;grid-template-columns:24px 1fr 22px;align-items:center;gap:18px;cursor:pointer;padding:27px 7px}
.engagement summary::-webkit-details-marker{display:none}
.engagement-number{color:#8598b2;font-size:12px;align-self:start;padding-top:5px}
.engagement-label{display:block;font-size:12px;letter-spacing:.07em;color:#7d8ca2;line-height:1.5;margin-bottom:5px}
.engagement strong{font-size:24px;color:var(--ink);font-weight:400;line-height:1.3;letter-spacing:-.025em}
.disclosure-icon{width:18px;height:18px;position:relative}
.disclosure-icon::before,.disclosure-icon::after{content:'';background:#56739c;position:absolute;top:8px;left:1px;width:16px;height:1px;transition:transform .3s}
.disclosure-icon::after{transform:rotate(90deg)}
.engagement[open] .disclosure-icon::after{transform:rotate(0)}
.engagement[open] strong{color:var(--blue)}
.engagement-content{padding:0 22px 29px 49px;animation:panel-enter .35s ease}
.engagement-content>p{font-size:16px;line-height:1.85}
.engagement-examples{display:flex;flex-wrap:wrap;gap:7px;margin-top:21px}
.engagement-examples span{font-size:12px;padding:5px 10px;border:1px solid #d5dfec;border-radius:3px;background:#fff;color:#5e7595}
.beyond{display:grid;grid-template-columns:.85fr 1.12fr;gap:110px;align-items:center}
.story-visual{padding:0 27px 40px 0;position:relative;isolation:isolate}
.story-visual::before{content:'';position:absolute;inset:24px 0 0 24px;background:#eaf0f8;z-index:-1;border-radius:3px}
.story-photo{overflow:hidden;border-radius:75px 3px 3px 3px;aspect-ratio:.9;background:#e4eaf2}
.story-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%;transition:transform .9s}
.story-visual:hover .story-photo img{transform:scale(1.03)}
.story-caption{position:absolute;right:-20px;bottom:18px;display:flex;flex-direction:column;padding:18px 23px;background:#fff;border:1px solid #dce4f0;color:var(--ink);font-size:14px;line-height:1.6}
.story-caption span:last-child{color:var(--blue)}
.story-copy .lead{font-size:20px;color:var(--ink);line-height:1.65;margin-top:26px}
.story-copy>p:not(.eyebrow):not(.lead){font-size:16px}
.story-path{display:flex;align-items:center;gap:12px;margin-top:35px;border-top:1px solid #dde5ef;padding-top:24px;flex-wrap:wrap}
.story-path span{font-size:12px;color:#496588;white-space:nowrap}
.story-path i{height:1px;flex:1;min-width:16px;background:#bbcce2}
.shared-perspective{padding-bottom:88px}
.shared-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;border-top:1px solid var(--line);padding-top:60px}
.shared-inner h2{font-size:35px}
.speaking-copy>p{font-size:16px;max-width:470px}
.speaking-list{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:19px 28px;color:var(--ink);font-size:14px;line-height:1.5}
.speaking-list li{border-left:2px solid #bbcfe9;padding-left:13px}
.contact{overflow:hidden}
.contact::before{content:'';width:380px;height:380px;border:1px solid rgba(160,189,230,.12);border-radius:50%;position:absolute;left:-230px;bottom:-210px;pointer-events:none}
.contact-inner{position:relative;z-index:1}
.motion-ready [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}
@keyframes enter-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes panel-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1150px){.site-header nav{gap:19px;font-size:13px}.brand-statement a{font-size:24px;gap:15px;padding-inline:20px}.solution-explorer{gap:24px;grid-template-columns:.88fr 1.6fr}.solution-tab{font-size:21px;padding-inline:14px;gap:10px}.solution-panel{padding-inline:31px;min-height:495px}.solution-panel h3{font-size:33px}.case-panel{gap:45px}.case-copy h3{font-size:32px}.case-tabs button{font-size:14px;gap:10px}.beyond{gap:75px}.partnership-layout{gap:55px}.scale-levels span{padding-inline:10px}.shared-inner{gap:65px}}
@media(max-width:900px){.site-header nav{gap:16px;font-size:12px}.wordmark-name{font-size:27px}.header-inner{gap:18px}.site-header .nav-contact{padding-inline:12px}.hero{padding-bottom:60px}.portrait-note{left:-16px;bottom:95px;padding:12px 17px}.portrait-note span{font-size:12px}.brand-statement a{font-size:21px;padding:25px 16px;gap:11px}.brand-statement a span{font-size:12px}.perspective-top{gap:40px}.perspective h2{font-size:27px;flex:1}.perspective-top>p{flex:1}.industry-list span{font-size:12px;padding-inline:8px}.solution-explorer{grid-template-columns:.85fr 1.6fr;gap:20px}.solution-tab{font-size:19px;padding:23px 12px;grid-template-columns:19px 1fr 14px}.tab-indicator{font-size:21px}.solution-panel{padding:29px 26px;min-height:515px}.solution-panel h3{font-size:31px}.panel-kicker{font-size:12px;letter-spacing:.02em}.panel-kicker span:last-child{display:none}.solution-list{font-size:14px}.solution-outcome{display:block}.solution-outcome>p{margin-top:7px}.selected-work h2{font-size:40px}.case-panel{gap:33px;grid-template-columns:1fr 1.1fr}.case-scale{padding-top:12px}.scale-number{font-size:88px}.scale-number.scale-wide{font-size:68px}.case-copy h3{font-size:31px}.case-tabs button{font-size:13px;gap:9px;padding-inline:10px}.case-tabs button span{display:none}.case-focus{display:block}.case-focus p{margin-top:7px}.scale-levels{gap:9px;flex-direction:column}.scale-levels span{padding:0;border:0}.case-bottom{gap:25px}.case-bottom>p{max-width:410px}.case-controls{gap:6px}.case-position{margin-right:5px}.case-controls button{padding:9px 11px}.approach-intro{top:130px}.approach-steps{padding-left:22px}.approach-step::before{left:-28px}.partnership-layout{grid-template-columns:.95fr 1.1fr;gap:38px}.engagement summary{gap:12px}.engagement strong{font-size:21px}.engagement-content{padding-left:37px;padding-right:6px}.beyond{gap:48px;grid-template-columns:.9fr 1.1fr}.story-caption{right:-9px;font-size:12px;padding:13px 17px}.story-copy h2{font-size:33px}.story-path{gap:8px}.story-path span{font-size:12px}.shared-inner{gap:45px}}
@media(max-width:700px){html{scroll-padding-top:110px}.site-header{height:88px}.site-header nav{font-size:16px}.site-header nav a[aria-current="location"]::after{display:none}.site-header .nav-contact{padding:10px}.hero{padding-bottom:42px;gap:39px}.hero h1{white-space:normal}.hero-portrait figcaption{align-items:flex-start}.hero-portrait figcaption span:last-child{max-width:145px;text-align:right;line-height:1.5}.portrait-note{left:-7px;bottom:82px;padding:12px 18px}.portrait-note span{font-size:13px}.brand-statement-inner{grid-template-columns:1fr}.brand-statement a,.brand-statement a:first-child{padding:18px 0;font-size:25px;gap:22px;justify-content:flex-start}.brand-statement a+a{border-left:0;border-top:1px solid var(--line)}.brand-statement a span{min-width:20px}.brand-statement a:hover{background:transparent}.about{padding-bottom:40px}.perspective{padding-top:30px;padding-bottom:51px}.perspective-top{display:block}.perspective h2{font-size:29px}.perspective-top>p{margin-top:20px;font-size:16px}.industry-list{display:flex;flex-wrap:wrap;border:0;gap:8px;margin-top:27px}.industry-list span,.industry-list span+span{border:1px solid var(--line);border-radius:3px;font-size:12px;padding:9px 13px}.expertise{padding-bottom:57px}.solution-explorer{display:block}.solution-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.solution-tab{font-size:14px;line-height:1.45;letter-spacing:0;display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:14px 11px;border-color:#d7e0ed;min-height:112px}.tab-number{font-size:12px;padding:0}.tab-indicator{display:none}.solution-panel{padding:26px 23px;min-height:0}.panel-kicker{font-size:12px;letter-spacing:.04em;margin-bottom:23px}.solution-panel h3{font-size:31px}.solution-panel>p{font-size:16px}.solution-list{font-size:14px;margin-top:21px}.solution-outcome{padding-top:18px}.solution-outcome>p{font-size:14px}.selected-work{padding-block:57px}.selected-work h2{font-size:37px}.selected-work .section-top{margin-bottom:20px}.selected-work .section-intro{font-size:16px;max-width:none}.case-tabs{margin-bottom:26px}.case-tabs button,.case-tabs button:first-child{font-size:12px;line-height:1.5;padding:15px 9px;align-items:flex-start;text-align:center;justify-content:center}.case-panel{grid-template-columns:1fr;gap:24px;min-height:0}.case-scale{padding:10px 0 26px;border-bottom:1px solid #395372}.scale-number{font-size:94px;margin-top:3px}.scale-number.scale-wide{font-size:clamp(64px,18vw,96px)}.scale-unit{font-size:16px}.scale-levels{margin-top:0;padding-top:22px;flex-direction:row;gap:14px;flex-wrap:wrap}.scale-levels span{font-size:12px}.case-copy{padding:0}.case-copy h3{font-size:32px}.case-copy>p:not(.eyebrow){font-size:16px}.case-focus{margin-top:21px}.case-bottom{flex-direction:column-reverse;align-items:flex-start;gap:24px;padding-top:25px;margin-top:29px}.case-controls{width:100%;gap:9px}.case-position{margin-right:auto}.case-controls button{padding:11px 18px;font-size:13px}.case-bottom>p{font-size:12px;max-width:100%}.approach-intro{position:static}.approach-steps{padding-left:24px}.approach-step::before{left:-30px}.approach-step{gap:15px}.approach-step h3{font-size:25px}.partnership-layout{grid-template-columns:1fr;gap:33px}.partnership-intro>p:not(.eyebrow){max-width:none}.engagement summary{padding-block:24px;gap:13px;grid-template-columns:22px 1fr 18px}.engagement strong{font-size:23px}.engagement-label{font-size:12px}.engagement-content{padding-left:42px;padding-bottom:26px}.engagement-examples span{font-size:12px}.beyond{grid-template-columns:1fr;gap:39px}.story-visual{max-width:450px;width:100%;margin-inline:auto;padding-right:20px;padding-bottom:33px}.story-photo{aspect-ratio:.97;border-top-left-radius:65px}.story-photo img{object-position:center 22%}.story-caption{right:0;bottom:9px;font-size:14px;padding:15px 20px}.story-copy h2{font-size:36px}.story-copy .lead{font-size:20px;margin-top:24px}.story-path{gap:9px;margin-top:27px}.story-path span{font-size:12px}.story-path i{min-width:8px}.shared-perspective{padding-bottom:57px}.shared-inner{grid-template-columns:1fr;gap:27px;padding-top:42px}.shared-inner h2{font-size:34px}.speaking-list{font-size:14px;gap:19px 17px}.footer-main{column-gap:15px}.footer-main .wordmark-name{font-size:25px}}
@media(prefers-reduced-motion:reduce){.hero-copy,.hero-portrait,.panel-enter,.engagement-content{animation:none!important}.motion-ready [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.portrait-frame img,.story-photo img,.portrait-note{transform:none!important}.reading-progress span{will-change:auto}}
