/* Persistent orientation, progressive disclosure and motion with a purpose. */
html{scroll-padding-top:110px}.site-header,.inner-page .site-header{position:fixed;top:0;left:0;padding-top:20px;padding-bottom:20px;transition:background-color .25s,border-color .25s;border-bottom:1px solid transparent}.site-header.is-scrolled,.site-header.menu-open,.inner-page .site-header{background:#252820f5;border-bottom-color:#ffffff20;backdrop-filter:blur(12px)}.inner-page{padding-top:85px}.site-header nav>a{position:relative}.site-header nav>a[aria-current="location"]:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:1px;background:#dddccc}.hero-discover{font-size:12px;border-bottom:1px solid #ffffff80;padding:10px 0}.hero-discover span{display:inline}.text-link{gap:0}.insight-row{grid-template-columns:35px 1fr}.insight-row:hover h3,.insight-row:focus-visible h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.career-disclosure{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.career-disclosure summary{font-size:12px;padding:17px 0;cursor:pointer}.career-disclosure .path{margin:0 0 18px}.services details[open] .service-content,.career-disclosure[open] .path{animation:disclose .24s ease-out}.reading-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:7vw;max-width:1280px;margin:auto;padding:55px var(--gutter)}.reading-layout .prose{padding:0;max-width:none;margin:0}.article-contents{position:sticky;top:120px;align-self:start;max-height:calc(100svh - 150px);overflow:auto}.article-contents summary{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;list-style:none;margin-bottom:20px;color:var(--muted)}.article-contents nav{display:grid;gap:15px}.article-contents a{font-size:12px;line-height:1.5;color:#73796b;border-left:1px solid #cdd1c4;padding-left:14px}.article-contents a[aria-current="location"]{color:var(--ink);border-color:var(--ink)}.article-contents a:hover{color:var(--ink)}.prose h2{scroll-margin-top:15px}.site-header .menu-toggle{min-height:44px}@keyframes disclose{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(min-width:1001px){.detail-photo{position:sticky;top:115px;align-self:start}.detail-photo img{max-height:calc(100svh - 175px);object-fit:cover}.leadership-portrait img{max-height:calc(100svh - 175px);width:auto;max-width:100%;object-fit:contain}.offer-grid>div:first-child{position:sticky;top:120px;align-self:start}}
@media(min-width:901px){.article-contents details:not([open])>nav{display:grid}.article-contents summary{pointer-events:none}}
@media(max-width:1100px){.reading-layout{grid-template-columns:180px minmax(0,1fr);gap:35px;padding-left:6vw;padding-right:6vw}}
@media(max-width:900px){.reading-layout{display:block;padding:32px var(--gutter) 45px}.article-contents{position:static;max-height:none;overflow:visible;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px}.article-contents summary{list-style:revert;cursor:pointer;margin:0;font-size:11px}.article-contents details[open] nav{margin-top:20px}.article-contents nav{gap:13px}.article-contents a{font-size:13px}}
@media(max-width:760px){html{scroll-padding-top:100px}.site-header,.inner-page .site-header{padding-top:16px;padding-bottom:16px}.site-header nav{top:76px;max-height:calc(100svh - 76px);overflow-y:auto}.inner-page{padding-top:77px}.hero-discover{font-size:11px;white-space:nowrap}.hero-lower{align-items:end}.insight-row{grid-template-columns:20px 1fr}.site-header.menu-open nav{padding-bottom:20px}.reading-layout .prose{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header,.services details[open] .service-content,.career-disclosure[open] .path{transition:none;animation:none}}
/* Technology advisory typography: one clear, restrained headline voice. */
h1,h2,.role h3,.subsection-heading h3,.stage-name,.vision-mission h3,.insight-row h3,.contact-form-layout h3,.prose h2,.cta-box p{font-family:Manrope,Arial,sans-serif;font-style:normal;font-weight:400;letter-spacing:-.035em;line-height:1.16}
h2{font-size:clamp(34px,3.5vw,60px)}
.hero h1{font-size:clamp(58px,6.1vw,112px);line-height:1.08;letter-spacing:-.045em;max-width:1200px}
.expertise-heading h2,.bio h2{font-size:clamp(34px,3.35vw,58px)}
.offer-grid h2{font-size:clamp(32px,3.1vw,53px)}
.contact h2{font-size:clamp(48px,5.9vw,100px)}
.page-head h1{font-size:clamp(39px,4.6vw,76px);line-height:1.13;max-width:1100px}
.role h3,.subsection-heading h3{font-size:27px}.stage-name{font-size:29px}
.vision-mission h3{font-size:clamp(25px,2.15vw,36px);line-height:1.4}
.insight-row h3{font-size:clamp(25px,2.05vw,35px);line-height:1.35}
.prose h2{font-size:29px;line-height:1.3;letter-spacing:-.025em}
.contact-form-layout h3{font-size:35px}.cta-box p{font-size:27px;line-height:1.35}
@media(max-width:760px){.hero h1{font-size:clamp(43px,8.5vw,62px);letter-spacing:-.04em}.intro-grid h2,.expertise-heading h2,.bio h2,.offer-grid h2{font-size:35px}.contact h2{font-size:47px}.page-head h1{font-size:37px}.insight-row h3{font-size:25px}.stage-name{font-size:25px}.prose h2{font-size:27px}.contact-form-layout h3{font-size:31px}.subsection-heading h3{font-size:27px}}
/* A scroll-led process: natural document scrolling, with a persistent index. */
.process-journey{display:grid;grid-template-columns:1fr 1.15fr;gap:12%;margin-top:65px;border-top:1px solid #b5bca9}
.process-index{position:sticky;top:135px;align-self:start;padding-top:32px;padding-bottom:35px}
.process-index nav{display:grid;margin-top:24px}
.process-index nav a{display:flex;align-items:center;gap:23px;padding:17px 0;border-bottom:1px solid #b5bca9;font-family:Manrope,Arial,sans-serif;font-size:clamp(22px,2.3vw,36px);line-height:1.3;color:#757d6c;transition:color .25s,padding-left .25s,border-color .25s}
.process-index nav a span{font:10px DM,Arial,sans-serif;letter-spacing:1px}
.process-index nav a[aria-current="step"]{color:var(--ink);padding-left:13px;border-bottom-color:var(--ink)}
.process-index nav a:hover{color:var(--ink)}
.process-panel{min-height:42svh;display:flex;flex-direction:column;justify-content:center;padding:50px 0;border-bottom:1px solid #b5bca9;scroll-margin-top:25px}
.process-panel:last-child{border-bottom:0}
.process-panel .eyebrow{color:#66705c;margin-bottom:24px}
.process-panel h3{font:400 clamp(28px,3vw,45px)/1.2 Manrope,Arial,sans-serif;letter-spacing:-.035em;max-width:470px}
.process-panel>p:last-child{font-size:17px;line-height:1.75;color:#626b58;max-width:480px;margin-top:25px}
.home-page .hero{overflow:hidden}
.home-page .hero-image{transform:translateY(var(--hero-shift,0px)) scale(1.035);transform-origin:50% 50%}
.home-page .hero-content{transform:translateY(var(--hero-copy-shift,0px))}
.site-header:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:#b4bca2;transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}
.services summary{transition:color .2s,background-color .2s}
.services summary:hover{color:#d6ddc6;background:#ffffff04}
.services details[open] .service-index{color:#f7f5ee}
.detail-photo figcaption{min-height:18px}
.text-link,.hero-discover,.contact-link{transition:color .2s,border-color .2s}
.text-link:hover,.hero-discover:hover{border-color:transparent}
.contact input,.contact textarea,.contact select{transition:background-color .2s,border-color .2s}
.contact input:focus,.contact textarea:focus,.contact select:focus{background:#ffffff0b;border-color:#e1e7d7}
.submit-button{transition:background-color .2s}
.submit-button:hover:not(:disabled){background:#fff}
@media(min-width:1001px){.home-page .intro-grid h2,.contact-form-layout>div:first-child{position:sticky;top:130px;align-self:start}}
@media(max-width:760px){.process-journey{display:block;margin-top:40px}.process-index{position:sticky;top:var(--header-height,90px);z-index:3;background:#e6e6dc;padding:12px 0 0}.process-index>.eyebrow,.process-index>.text-link{display:none}.process-index nav{grid-template-columns:repeat(4,1fr);margin:0;gap:8px}.process-index nav a{font-size:12px;display:flex;flex-direction:column;align-items:start;gap:6px;padding:10px 0 13px}.process-index nav a[aria-current="step"]{padding-left:0;border-bottom-width:2px}.process-panel{min-height:300px;padding:40px 0;scroll-margin-top:85px}.process-panel h3{font-size:30px}.process-panel>p:last-child{font-size:16px}.hero-foot a{max-width:110px;text-align:right}.home-page .hero-image{transform:none}.home-page .hero-content{transform:none}}
@media(prefers-reduced-motion:reduce){.home-page .hero-image,.home-page .hero-content{transform:none}.process-index nav a{transition:none}}

/* Inactive stages take no layout space; the selected content sits alongside the index. */
.process-enhanced{margin-top:45px;gap:9%;align-items:start}
.process-enhanced .process-index{position:static;padding-top:28px;padding-bottom:0}
.process-enhanced .process-index nav{margin-top:18px}
.process-enhanced .process-index nav a{padding-top:12px;padding-bottom:12px;font-size:clamp(22px,2vw,32px)}
.process-enhanced .process-panel{min-height:0;justify-content:flex-start;padding:82px 0 15px;border:0}
.process-panel[hidden]{display:none}
.process-panel:focus-visible{outline:2px solid #9f8a60;outline-offset:8px}
.process-enhanced .process-panel .eyebrow{margin-bottom:20px}
.process-enhanced .process-panel>p:last-child{margin-top:20px}
@media(max-width:760px){.process-enhanced{margin-top:32px}.process-enhanced .process-index{padding-top:18px}.process-enhanced .process-index>.eyebrow{display:block;font-size:9px}.process-enhanced .process-index nav{margin-top:12px}.process-enhanced .process-index nav a{font-size:12px}.process-enhanced .process-panel{padding:28px 0 0}.process-enhanced .process-panel h3{font-size:28px}}
/* Original copy within the established page composition. */
.home-page .hero h1{font-size:clamp(46px,5.3vw,92px);max-width:1100px;line-height:1.1}
.home-page .hero-lower>p{max-width:570px}
.home-page .hero-discover{flex-shrink:0}
.principles{align-items:start;gap:30px}
.principles>span{flex:1;min-width:0}
.principles .practice-name{display:block}
.principles small{display:block;font-size:11px;font-weight:400;line-height:1.6;color:var(--muted);margin-top:9px;max-width:310px}
.contact-main h2{font-size:clamp(40px,4.5vw,76px);max-width:760px}
@media(max-width:760px){.home-page .hero h1{font-size:clamp(39px,8.5vw,61px)}.home-page .hero-lower{display:block}.home-page .hero-discover{display:inline-block;margin-top:18px}.principles>span{flex:1 1 100%}.contact-main h2{font-size:41px}}

/* Give the original transparent portrait breathing room above the head. */
.portrait-frame{padding-top:clamp(24px,3vw,44px);background:#dddcd2}
.leadership-portrait .portrait-frame img{display:block;width:100%;height:auto;max-height:none;max-width:100%;aspect-ratio:auto;padding:0;object-fit:contain;object-position:center bottom;background:transparent}

/* Warm ivory process section with neutral supporting tones. */
.approach,.approach .process-index{background:#f3f1eb}
.approach .approach-heading>p,.approach .process-panel>p,.approach .subsection-heading p,.approach .engagement-list p{color:#706e68}
.approach .process-index nav a{color:#79766f;border-bottom-color:#cfcbc2}
.approach .process-index nav a[aria-selected="true"]{color:var(--ink)}
/* Approved content consolidation, retaining the established palette and composition. */
.expertise-group>.perspective{padding-bottom:65px}
.expertise-group>.expertise{padding-top:65px}
.executive-catalogue-entry{display:none}
.executive-feature{padding:4px 0 28px;margin-bottom:26px;border-bottom:1px solid #5b6152}
.executive-feature>h3{font:400 clamp(24px,2.3vw,36px)/1.25 Manrope,Arial,sans-serif;color:var(--white);max-width:580px;letter-spacing:-.03em}
.executive-feature>p{font-size:14px;line-height:1.7;margin-top:22px;max-width:570px}
.executive-feature .roles{margin-top:25px;border:0}
.executive-feature .role{padding:18px 0;border-color:#5b6152}
.executive-feature .role h4{font:400 18px/1.3 Manrope,Arial,sans-serif;color:var(--white);margin-bottom:12px}
.executive-feature .role ul{color:#b6bbae;font-size:13px}
.executive-feature .text-link{color:var(--white)}
.practice-introduction{margin:0 0 28px!important;max-width:550px!important}
.expertise-audience{background:var(--paper);padding-top:65px;padding-bottom:75px}
.expertise-audience .approach-heading h2{font-size:clamp(32px,3.3vw,54px);max-width:730px}
.expertise-audience .approach-heading>p{max-width:430px}
.expertise-audience .audience-list p{max-width:620px}
.vision-mission h3{font-size:clamp(27px,2.55vw,41px);line-height:1.35}
.study .career-detail{min-height:200px}
.study .career-detail p{line-height:1.7;max-width:640px}
@media(max-width:760px){.expertise-group>.perspective,.expertise-group>.expertise,.expertise-audience{padding-top:45px;padding-bottom:45px}.study .career-detail{min-height:240px}.vision-mission h3{font-size:27px}.executive-feature>h3{font-size:27px}}

/* Evidence belongs with the career narrative. */
.career-disclosure + .selected-experience{margin:20px 0 0;padding:24px 0;border-top:1px solid var(--line)}
.career-disclosure + .selected-experience .eyebrow{margin:0 0 20px}
.career-disclosure + .selected-experience .proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px;margin:0;border:0;padding:0;font-size:13px;line-height:1.65}
.career-disclosure + .selected-experience .proof b{font-size:14px;margin-bottom:6px}
@media(max-width:600px){.career-disclosure + .selected-experience .proof{grid-template-columns:1fr;gap:18px}}

.services-consultation{padding:28px 0 4px}

/* Peer service hierarchy within Executive Leadership & Governance. */
.services .executive-service .executive-feature{padding:0;margin:0;border:0}
.services .executive-service .executive-feature>h3{font:400 18px/1.5 Manrope,Arial,sans-serif;letter-spacing:0;max-width:580px;color:var(--white)}
.services .executive-service .executive-feature>p{margin-top:14px}
.services .service-content dl>div+div{margin-top:28px}
.services .executive-service .roles{margin-top:18px}
.services .executive-service .role h4{font-size:14px}

.insights-footer{display:grid;grid-template-columns:35px 1fr;column-gap:25px;padding-top:28px}
.insights-footer>.text-link{grid-column:2;justify-self:start}
@media(max-width:760px){.insights-footer{grid-template-columns:20px 1fr;column-gap:16px}}

/* Compact individual services, retaining the three practice groups. */
.services .service-options{margin:0}
.services .service-disclosure{border-bottom:1px solid #ffffff26}
.services .service-disclosure:last-child{border-bottom:0}
.services .service-disclosure>summary{grid-template-columns:minmax(0,1fr) 16px;gap:16px;padding:20px 0;font-size:16px;line-height:1.5}
.services .service-disclosure:not([open])>summary .plus:after{transform:rotate(90deg)}
.services .service-disclosure[open]>summary .plus:after{transform:rotate(0)}
.services .service-option-content{padding:0 0 24px;font-size:14px;line-height:1.7}
.services .service-option-content>p{margin:0}
.services .service-option-content .executive-feature{padding:0;margin:0;border:0}
.services .service-option-content .executive-feature>h3{font:400 18px/1.5 Manrope,Arial,sans-serif;letter-spacing:0}
.services .service-option-content .executive-feature>p{margin-top:14px}
.services .service-option-content .role h4{font-size:14px}

/* One practice navigation, one service list, one reading panel. */
.service-practice-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border-bottom:1px solid #ffffff30;margin-bottom:36px}
.service-practice-tabs button,.service-choice-list button{appearance:none;background:none;border:0;border-radius:0;color:#b6bbae;font-family:inherit;text-align:left;cursor:pointer;transition:color .2s,border-color .2s}
.service-practice-tabs button{font-size:clamp(16px,1.7vw,24px);line-height:1.4;padding:0 0 22px;border-bottom:2px solid transparent;margin-bottom:-1px}
.service-practice-tabs button[aria-selected=true]{color:#f3f1e9;border-bottom-color:#b49a6b}
.service-practice-tabs button:hover,.service-choice-list button:hover{color:#fff}
.service-practice-tabs button:focus-visible,.service-choice-list button:focus-visible{outline:1px solid #b49a6b;outline-offset:5px}
.service-practice-panels{display:grid}.service-practice-pane{grid-area:1/1;min-width:0}
.service-practice-pane[hidden]{display:block;visibility:hidden;pointer-events:none}
.service-practice-pane>.practice-introduction{max-width:850px;margin:0 0 30px;font-size:16px;line-height:1.7;color:#c7c9bd}
.service-workspace{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.5fr);gap:8%;align-items:start}
.service-choice-list{display:flex;flex-direction:column;align-items:start;gap:12px}
.service-choice-list button{font-size:15px;line-height:1.5;padding:12px 0;border-bottom:1px solid transparent;max-width:100%}
.service-choice-list button[aria-selected=true]{color:#f3f1e9;border-bottom-color:#b49a6b}
.service-detail-stack{display:grid;min-width:0}.service-detail-pane{grid-area:1/1;font-size:16px;line-height:1.75;color:#c7c9bd}
.service-detail-pane[hidden]{display:block;visibility:hidden;pointer-events:none}
.service-detail-pane>p{margin:0;max-width:720px}
.service-detail-pane .executive-feature{margin:0;padding:0;border:0}
.service-detail-pane .executive-feature>h3{font:400 clamp(23px,2.2vw,32px)/1.35 Manrope,Arial,sans-serif;color:#f3f1e9;letter-spacing:-.02em;max-width:650px}
.service-detail-pane .executive-feature>p{font-size:15px;max-width:720px;margin-top:18px}
.service-detail-pane .roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:20px}
.service-detail-pane .role h4{font-size:14px}.service-detail-pane .role ul{font-size:13px}
@media(max-width:760px){.service-practice-tabs{gap:18px;margin-bottom:26px;grid-template-columns:1fr}.service-practice-tabs button{padding:12px 0;font-size:18px}.service-workspace{grid-template-columns:1fr;gap:28px}.service-choice-list{flex-direction:row;flex-wrap:wrap;gap:6px 20px}.service-choice-list button{font-size:13px;padding:9px 0}.service-practice-pane[hidden],.service-detail-pane[hidden]{display:none}.service-detail-pane{font-size:15px}.service-practice-pane>.practice-introduction{font-size:14px}.service-detail-pane .roles{grid-template-columns:1fr;gap:0}}

/* Direct service rows: one navigation level, no secondary selectors. */
.service-browser .service-practice-panels{display:block}
.service-browser .service-practice-pane[hidden]{display:none}
.service-row{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.5fr);gap:8%;padding:28px 0;border-top:1px solid #ffffff20}
.service-row:first-child{border-top:0;padding-top:0}
.service-row-title{font:400 17px/1.5 Manrope,Arial,sans-serif;color:#f3f1e9;margin:0}
.service-row-copy{font-size:15px;line-height:1.75;color:#c7c9bd}
.service-row-copy>p{margin:0;max-width:720px}
.service-row-copy .executive-feature{padding:0;margin:0;border:0}
.service-row-copy .executive-feature>h3{font:400 21px/1.4 Manrope,Arial,sans-serif;letter-spacing:0;color:#f3f1e9;max-width:650px}
.service-row-copy .executive-feature>p{font-size:15px;line-height:1.75;margin:14px 0 0;max-width:720px}
.service-row-copy .roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:20px}
.service-row-copy .role{padding:0;border:0}
.service-row-copy .role h4{font-size:14px;margin-bottom:10px}
.service-row-copy .role ul{font-size:13px;line-height:1.7;margin:0;padding-left:16px}
@media(max-width:760px){.service-row{grid-template-columns:1fr;gap:12px;padding:24px 0}.service-row-title{font-size:16px}.service-row-copy .roles{grid-template-columns:1fr;gap:20px}.service-row-copy .executive-feature>h3{font-size:19px}}

/* Practice introductions stay subordinate to navigation and service titles. */
.service-browser .service-practice-pane>.practice-introduction{font-size:14px;line-height:1.6;max-width:850px;margin:0 0 22px}
@media(max-width:760px){.service-browser .service-practice-pane>.practice-introduction{font-size:13px;line-height:1.6;margin-bottom:20px}}

.service-row-copy .executive-feature>p:first-child{margin-top:0}

/* Experience uses the full profile width rather than extending one narrow column. */
.leadership-grid{row-gap:28px}
.leadership-grid>.selected-experience{grid-column:1/-1;margin:0;padding:24px 0 0;border-top:1px solid var(--line)}
.leadership-grid>.selected-experience .proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0;border:0;font-size:13px;line-height:1.65}
.leadership-grid>.selected-experience .proof b{display:block;font-size:14px;line-height:1.5;margin-bottom:8px}
.leadership-credentials{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px}
.leadership-credentials .credentials{margin:0;padding:0;border:0;gap:20px}
.leadership-credentials .framework-note{margin:0;font-size:11px}
#leadership{padding-bottom:40px}#values{padding-top:40px}
@media(max-width:1000px){.leadership-grid>.selected-experience .proof{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:600px){.leadership-grid>.selected-experience .proof{grid-template-columns:1fr}.leadership-credentials{gap:14px}#leadership{padding-bottom:28px}#values{padding-top:28px}}

/* Let spacing define the profile groups; retain only functional progress marks. */
#leadership .career-story,#leadership .selected-experience,#leadership .leadership-credentials,#leadership .proof,#leadership .credentials{border:0}

/* Portrait belongs to the biography row, not the full multirow grid. */
.leadership-grid>.leadership-portrait{position:relative;top:auto;align-self:start;min-width:0}
.leadership-grid>.bio{min-width:0}
