/* Targeted refinements. Preserve the original Manrope, palette and hero layout. */
.button,.portrait-name,.project-visual,.project-window,.concept-label,.project-view,
dialog,.dialog-close,.brief-result,#brief-message,#brief-form select,#brief-form textarea{border-radius:0;box-shadow:none}
dialog::backdrop{backdrop-filter:none}
.project-window{background:var(--paper)}
.service-row .icon{transition:none}
.service-row:hover .icon{transform:none}
.mobile-menu{box-shadow:none}
.button,.button .icon,.project-window,.project-view,.text-link,.desktop-nav a::after{transition:none}
.button:hover,.button:active,.button:hover .icon,.project-visual:hover .project-window{transform:none}
.project-view{display:none}
.window-bar{display:none}
.price-note{border-left:0;padding-left:0;padding-top:18px;border-top:1px solid var(--line)}
.service-consultation{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);max-width:350px}
.service-consultation strong{font-size:18px;font-weight:750}
.service-consultation p{font-size:15px;line-height:1.7;margin-top:10px}
.service-consultation .text-link{font-size:15px;margin-top:17px}
.services-intro>.service-timing-note{font-size:13px;line-height:1.7;color:var(--muted);margin-top:28px;max-width:350px;letter-spacing:0}
.service-row{scroll-margin-top:32px;grid-template-columns:44px minmax(0,1fr) 26px}
.service-row h3{font-size:30px;line-height:1.3;overflow-wrap:anywhere}
.service-row .service-detail{font-size:14px;font-weight:650;color:var(--ink)}
.service-directions{grid-column:1 / -1;display:grid;grid-template-columns:45% 55%;border-top:1px solid var(--line);margin-top:64px;padding-top:55px}
#directions-heading{font-size:clamp(29px,3vw,43px);line-height:1.15;letter-spacing:-.045em}
.direction-list,.service-list{min-width:0}
.direction-row{padding:26px 0;border-bottom:1px solid var(--line);scroll-margin-top:32px}
.direction-row:first-child{padding-top:0}
.direction-row h4{font-size:25px;line-height:1.35;letter-spacing:-.035em;overflow-wrap:anywhere;font-weight:750;margin:0}
.direction-row p{font-size:16px;line-height:1.65;margin-top:12px;max-width:540px}
.direction-row .text-link{font-size:14px;margin-top:9px;min-height:44px;padding-block:8px}
@media(max-width:980px){.service-directions{grid-template-columns:42% 58%}.service-row{grid-template-columns:30px minmax(0,1fr) 22px;gap:12px}.service-row .icon{width:22px;height:22px}.service-row h3{font-size:25px}.direction-row h4{font-size:23px}.direction-row p{font-size:15px}}
@media(max-width:700px){.service-directions{grid-template-columns:1fr;margin-top:38px;padding-top:35px;gap:27px}.service-row h3{font-size:25px}.service-consultation{margin-top:24px}.service-row{scroll-margin-top:22px}.direction-row{padding-block:23px;scroll-margin-top:22px}.direction-row:first-child{padding-top:23px;border-top:1px solid var(--line)}.direction-row h4{font-size:23px}.services-intro>.service-timing-note{max-width:none;margin-top:20px}}
.eyebrow{letter-spacing:.025em;text-transform:none;font-size:13px}
.source-link{font-size:13px}
.about{padding-block:80px}
.credentials-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:10%;align-items:start}
.credentials-grid>*{min-width:0}
.about-compact{padding-block:56px}
.about-compact .credentials-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%}
.about-compact .credentials-person h2,.about-compact .credentials-proof>h3{font-size:22px;margin-bottom:20px}
.about-compact .credentials-name{font-size:clamp(32px,3.5vw,48px);line-height:1.15;margin-bottom:16px}
.about-compact .credentials-role{font-size:17px;line-height:1.6}
.about-compact .credentials-intro{font-size:16px;line-height:1.7;margin-top:17px;max-width:480px}
.about-compact .proof-list>li{padding:15px 0}
.about-compact .proof-list>li:first-child{padding-top:0}
.about-compact .proof-list>li:last-child{padding-bottom:0}
.about-compact .proof-list h4{font-size:17px;margin-bottom:5px}
.about-compact .proof-list>li>p{font-size:14px;line-height:1.65}
@media(max-width:700px){.about-compact{padding-block:38px}.about-compact .credentials-grid{grid-template-columns:1fr;gap:28px}.about-compact .credentials-person h2,.about-compact .credentials-proof>h3{font-size:20px;margin-bottom:16px}.about-compact .credentials-name{font-size:35px}.about-compact .credentials-role{font-size:16px}.about-compact .credentials-intro{font-size:15px;margin-top:13px}.about-compact .proof-list h4{font-size:17px}}
.credentials-person h2,.credentials-proof>h3{font-size:27px;line-height:1.3;letter-spacing:-.035em;font-weight:700;margin:0 0 25px}
.credentials-name{font-size:clamp(44px,4.4vw,64px);font-weight:800;line-height:1.04;letter-spacing:-.055em;margin-bottom:23px}
.credentials-role{font-size:20px;font-weight:650;line-height:1.6;letter-spacing:-.025em}
.credentials-intro{font-size:16px;line-height:1.75;margin-top:23px;max-width:460px}
.credentials-skills{margin:28px 0 0;font-size:14px;line-height:1.6;max-width:460px}
.credentials-skills>div{display:grid;grid-template-columns:65px minmax(0,1fr);gap:12px;padding:13px 0;border-top:1px solid var(--line)}
.credentials-skills dt{font-weight:750}.credentials-skills dd{margin:0}
.proof-list{list-style:none;padding:0;margin:0}
.proof-list>li{padding:22px 0;border-top:1px solid var(--line)}
.proof-list>li:first-child{padding-top:0;border-top:0}
.proof-list>li:last-child{padding-bottom:0}
.proof-list h4{font-size:19px;line-height:1.5;font-weight:750;letter-spacing:-.025em;margin:0 0 10px}
.proof-list>li>p{font-size:15px;line-height:1.7;margin:0;max-width:590px}
.proof-numbers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin:15px 0 13px}
.proof-numbers p{display:flex;flex-direction:column}
.proof-numbers strong{font-size:clamp(27px,2.7vw,40px);font-weight:800;line-height:1.2;letter-spacing:-.045em;white-space:nowrap}
.proof-numbers span{font-size:12px;line-height:1.6;margin-top:5px}
.proof-link{font-size:14px;margin-top:17px}
.team-summary{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:10%;border-top:1px solid var(--line);margin-top:42px;padding-top:27px}
.team-summary h3{font-size:26px;line-height:1.4;font-weight:700;letter-spacing:-.035em}
.team-summary p{font-size:16px;line-height:1.7;max-width:650px}
.team-summary p+p{font-size:13px;margin-top:10px}
.case-studies{border-top:1px solid var(--ink)}
.case-study{border-bottom:1px solid var(--line)}
.case-summary{list-style:none;display:grid;grid-template-columns:42px minmax(0,1fr) 126px;gap:22px;align-items:start;cursor:pointer;padding:29px 0}
.case-summary::-webkit-details-marker{display:none}
.case-summary::marker{content:''}
.case-index{font-size:14px;line-height:1.7;color:var(--muted);padding-top:3px}
.case-summary-copy{display:block;min-width:0}
.case-client{display:block;font-size:13px;color:var(--muted);margin-bottom:9px}
.case-title{display:block;font-size:clamp(23px,2.35vw,34px);font-weight:700;letter-spacing:-.035em;line-height:1.3}
.case-annotation{display:block;font-size:14px;line-height:1.6;color:var(--muted);margin-top:12px}
.case-toggle{display:flex;align-items:center;justify-content:flex-end;gap:16px;font-size:13px;white-space:nowrap;padding-top:4px}
.disclosure-mark{display:block;position:relative;flex-shrink:0;width:18px;height:18px}
.disclosure-mark::before,.disclosure-mark::after{content:'';position:absolute;left:0;top:8px;width:18px;height:2px;background:currentColor}
.disclosure-mark::after{transform:rotate(90deg)}
.case-study[open] .disclosure-mark::after{display:none}
.when-open,.case-study[open] .when-closed{display:none}
.case-study[open] .when-open{display:inline}
.case-study[open] .case-toggle{color:var(--orange)}
.case-detail{padding:6px 0 38px 64px}
.expo-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:40px;align-items:start}
.case-photo{min-width:0;margin:0}
.case-photo img{width:100%;height:auto;display:block}
.case-photo figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:11px}
.expo-photos{display:grid;gap:25px;min-width:0}
.expo-photo-secondary{max-width:300px}
.case-story{min-width:0}
.case-detail h3{font-size:23px;font-weight:700;line-height:1.4;letter-spacing:-.025em;margin-bottom:10px}
.case-detail p{font-size:16px;line-height:1.8;max-width:680px}
.case-detail p+p{margin-top:15px}
.case-story h3:not(:first-child){margin-top:25px}
.case-statistics{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;border-block:1px solid var(--line);padding:23px 0;margin:28px 0}
.case-statistics>div{display:flex;flex-direction:column;min-width:0}
.case-statistics dt{font-size:12px;line-height:1.65;color:var(--muted)}
.case-statistics dd{order:-1;margin:0 0 6px;font-size:40px;line-height:1.2;font-weight:700;letter-spacing:-.04em}
.case-outcome{color:var(--muted)}
.consulting-detail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:60px;align-items:start}
.consulting-statistics{margin:0;padding:0}
.consulting-statistics>div{display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding:17px 0;border-top:1px solid var(--line)}
.consulting-statistics dt{font-size:14px;color:var(--muted)}
.consulting-statistics dd{margin:0;font-size:25px;font-weight:700;white-space:nowrap}
.case-detail .metric-note{font-size:12px;color:var(--muted);margin-top:22px}
.portal-detail{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:55px;align-items:start}
.portal-detail .case-photo{max-width:390px;justify-self:end}
.portal-detail .text-link{margin-top:26px;font-size:16px}
.portal-live{padding-top:16px;border-top:1px solid var(--line)}
.portal-live p{font-size:26px;font-weight:750;letter-spacing:-.035em;overflow-wrap:anywhere}
.demo-link{margin-top:17px;font-size:15px}
.media-frame{position:relative;isolation:isolate;min-width:0;background:#dedcd6}
.media-frame.is-loading::before{content:'';position:absolute;inset:0;z-index:2;background:#d7d5ce;animation:media-pulse 1.2s ease-in-out infinite alternate;pointer-events:none}
.media-frame.is-loading img{opacity:0}
.media-frame.has-error{min-height:160px;display:flex;align-items:center;justify-content:center;padding:24px}
.media-frame.has-error img{display:none}
.media-error{font-size:14px;color:var(--muted);line-height:1.6}
@keyframes media-pulse{from{opacity:.55}to{opacity:1}}
.form-documents{font-size:11px;line-height:1.7;color:#c7c9c2;margin-top:12px}
.form-documents a{text-decoration:underline;text-underline-offset:3px}
.footer{flex-wrap:wrap}
.legal-links{display:flex;gap:12px 30px;flex-wrap:wrap;width:100%;border-top:1px solid #4f514b;padding-top:20px;font-size:12px;color:#c7c9c2}
.legal-links a{text-decoration:underline;text-underline-offset:3px}
.legal-page{background:var(--paper);color:var(--ink)}
.legal-page .container{max-width:980px}
.legal-header{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px 0;border-bottom:1px solid var(--line);font-size:15px}
.legal-header a{text-decoration:underline;text-underline-offset:4px}
.legal-content{max-width:800px;padding:55px 0 70px}
.legal-content h1{font-size:clamp(30px,4vw,48px);line-height:1.2;letter-spacing:-.035em;white-space:normal;margin-bottom:22px}
.legal-content h2{font-size:24px;line-height:1.4;margin:34px 0 12px;letter-spacing:-.02em}
.legal-content p,.legal-content li{font-size:16px;line-height:1.8}
.legal-content p+p{margin-top:16px}
.legal-content ul{padding-left:23px}
.legal-content a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-meta{font-size:13px!important;line-height:1.7;color:var(--muted);margin:20px 0}
@media(max-width:1100px){.case-summary{grid-template-columns:30px minmax(0,1fr) 110px;gap:20px}.case-detail{padding-left:50px}.expo-layout{gap:28px}.case-detail p{font-size:15px}.case-detail h3{font-size:21px}.case-statistics dd{font-size:35px}.consulting-detail,.portal-detail{gap:35px}}
@media(max-width:800px){.expo-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px}.case-title{font-size:24px}.case-statistics{gap:15px}.case-statistics dd{font-size:30px}.case-detail p{font-size:14px}.case-detail h3{font-size:19px}.consulting-detail{grid-template-columns:1fr;gap:25px}.consulting-statistics{max-width:520px}.portal-detail{gap:25px}.case-toggle{font-size:12px}}
@media(max-width:700px){
 .about{padding-block:48px}.credentials-grid{grid-template-columns:1fr;gap:38px}.credentials-person h2,.credentials-proof>h3{font-size:24px;margin-bottom:20px}.credentials-name{font-size:46px}.credentials-name br{display:none}.credentials-name br::after{content:' '}.credentials-role{font-size:18px}.credentials-intro{font-size:15px;margin-top:18px}.credentials-skills{margin-top:22px;max-width:none;font-size:13px}.proof-list h4{font-size:18px}.proof-list>li>p{font-size:14px}.proof-numbers strong{font-size:32px}.proof-numbers{gap:15px}.proof-numbers span{font-size:12px}.proof-link{font-size:13px}.team-summary{grid-template-columns:1fr;gap:16px;margin-top:32px;padding-top:23px}.team-summary h3{font-size:23px}.team-summary h3 br{display:none}.team-summary h3 br::after{content:' '}.team-summary p{font-size:15px}.team-summary p+p{font-size:12px}.expo-photo-secondary{max-width:260px}
 .case-summary{grid-template-columns:23px minmax(0,1fr) 18px;gap:12px;padding:24px 0}.case-index{font-size:12px}.case-client{font-size:11px;line-height:1.6}.case-title{font-size:23px;line-height:1.35}.case-annotation{font-size:12px;margin-top:10px}.case-toggle .when-open,.case-toggle .when-closed{display:none}.case-toggle{padding-top:2px}
 .case-detail{padding:4px 0 28px}.expo-layout,.portal-detail{grid-template-columns:1fr;gap:28px}.case-photo{max-width:520px}.case-detail h3{font-size:21px}.case-detail p{font-size:15px}.case-statistics dd{font-size:36px}.case-statistics dt{font-size:12px}.case-statistics{gap:25px;margin:24px 0}.case-story h3:not(:first-child){margin-top:23px}.case-photo figcaption{font-size:11px}.portal-detail .case-photo{justify-self:start;max-width:390px}
 .consulting-statistics>div{gap:15px}.consulting-statistics dt{font-size:12px}.consulting-statistics dd{font-size:22px}.case-detail .metric-note{font-size:11px}.source-link{font-size:12px}.demo-link{font-size:14px}.legal-links{font-size:11px;gap:12px;margin-top:3px}.footer p{order:initial;width:auto;border:0;padding:0}.footer .legal-links{order:10}
 .legal-header{padding-block:23px;font-size:13px;flex-wrap:wrap;gap:14px}.legal-content{padding-top:32px}.legal-content h2{font-size:21px}.legal-content p,.legal-content li{font-size:15px}
}
@media(min-width:701px) and (max-width:1100px){.credentials-grid,.team-summary{gap:6%}.credentials-name{font-size:45px}.credentials-role{font-size:17px}.credentials-person h2,.credentials-proof>h3{font-size:25px}.credentials-intro{font-size:15px}.credentials-skills{font-size:13px}.proof-list h4{font-size:17px}.proof-list>li>p{font-size:14px}.proof-numbers strong{font-size:30px}.proof-numbers span{font-size:11px}.team-summary h3{font-size:24px}.team-summary p{font-size:15px}}
@media(max-width:360px){.case-summary{gap:8px;grid-template-columns:20px minmax(0,1fr) 16px}.case-title{font-size:20px}.disclosure-mark,.disclosure-mark::before,.disclosure-mark::after{width:16px}.case-statistics dd{font-size:30px}.case-statistics dt{font-size:11px}.consulting-statistics dd{font-size:19px}.case-detail p{font-size:14px}.credentials-name{font-size:39px}.proof-numbers strong{font-size:27px}.proof-numbers span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.media-frame.is-loading::before{animation:none}}
@media(max-width:310px){.proof-numbers strong{font-size:23px}}
@media(max-width:700px){.expo-layout .case-story{order:-1}.expo-photo-secondary{max-width:260px}}
@media print{.case-study:not([open])>*{display:block}.case-summary{display:block}.case-toggle{display:none}}
