@font-face{font-family:Montserrat;src:url('/cache/montserrat-bold-latin-v2.9e8843f3938f.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('/cache/source-sans-regular-latin-v2.5b33766d1210.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('/cache/source-sans-semibold-latin-v2.43886b401558.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
:root{--green:#005b3e;--deep:#003d2a;--ink:#172238;--sage:#8bae9b;--fog:#e8efea;--muted:#52615f;--line:#cbd6cf;--head:Montserrat,Arial,sans-serif;--body:'Source Sans 3',Arial,sans-serif}
*{box-sizing:border-box}
main,section,article,aside,nav,div{min-width:0}
h1,h2,h3,a{overflow-wrap:break-word}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;color:var(--ink);background:#fff;font-family:var(--body);font-size:1.125rem;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:.25em}
button{font:inherit}
img{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.14;letter-spacing:-.045em;text-wrap:balance}
h1{font-size:clamp(2.6rem,4.8vw,4.75rem)}
h2{font-size:clamp(2rem,3.25vw,3.1rem)}
h3{font-size:1.4rem;letter-spacing:-.03em;line-height:1.25}
p+p{margin-top:1rem}
strong{font-weight:600}
::selection{background:#c4d9cd;color:var(--deep)}
:focus-visible{outline:3px solid #b5740e;outline-offset:5px}
.container{width:min(1280px,calc(100% - 6rem));margin-inline:auto}
.section{padding-block:6.5rem}
.fog{background:var(--fog)}
.ink{background:var(--ink);color:white}
.eyebrow{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--green);margin-bottom:1.2rem;line-height:1.4}
.large-copy{font-size:1.6rem;line-height:1.45}
.lead{font-size:1.4rem;line-height:1.5;max-width:47rem;margin-top:1.8rem}
.skip-link{position:fixed;z-index:100;top:-8rem;left:1rem;background:#fff;color:var(--ink);padding:1rem;clip-path:inset(50%)}
.skip-link:focus{top:1rem;clip-path:none}
.site-header{background:white;position:relative;z-index:20;border-bottom:1px solid #e3e8e4}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:104px}
.brand{display:inline-flex;flex-shrink:0}
.brand img{width:300px;height:80px;object-fit:cover;object-position:center}
#primary-nav{display:flex;align-items:center;gap:1.6rem}
#primary-nav>a{font-size:1rem;font-weight:600;text-decoration:none;white-space:nowrap}
#primary-nav>a:not(.button){padding-block:1.8rem;position:relative}
#primary-nav>a[aria-current=page]::after{content:'';position:absolute;bottom:1.25rem;left:0;right:0;height:2px;background:var(--green)}
#primary-nav>a:not(.button):hover{color:var(--green)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:1.7rem;min-height:54px;padding:.85rem 1.5rem;background:var(--green);color:white;text-decoration:none;font-weight:600;font-size:1.05rem;line-height:1.3;transition:background .18s ease,transform .18s ease}
.button:hover{background:var(--deep);transform:translateY(-2px)}
.button.light{background:white;color:var(--deep)}
.button.light:hover{background:var(--fog)}
.button.compact{min-height:45px;padding:.75rem 1.2rem;gap:1.2rem}
.text-link{display:inline-flex;align-items:center;gap:1.5rem;margin-top:1.75rem;color:var(--green);font-weight:600;text-decoration:none;border-bottom:1px solid var(--sage);padding-bottom:.5rem}
.text-link:hover{border-color:var(--green)}
.text-link.inverse{color:white;border-color:var(--sage)}
.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1.08fr 1fr;background:var(--deep);color:white}
.hero-content{padding:5rem max(3rem,calc((100vw - 1280px)/2));padding-right:3rem;min-width:0}
.hero .eyebrow{color:#bdd5c6;margin-bottom:1.75rem}
.hero h1{font-size:clamp(3.3rem,5.25vw,5.45rem);letter-spacing:-.055em;line-height:1.04}
.hero h1 span{color:#a9c9b8}
.hero-lead{max-width:32rem;color:#e2ebe5;font-size:1.3rem;line-height:1.5;margin-top:1.65rem}
.hero-actions{display:flex;gap:1.6rem;align-items:center;flex-wrap:wrap;margin-top:2rem}
.hero-link{font-size:1rem;font-weight:600;text-decoration:none;border-bottom:1px solid #719786;padding:.5rem 0}
.hero-tagline{margin-top:3.5rem;font-size:.925rem;letter-spacing:.075em;color:#c7d9cf}
.hero-tagline span{padding:0 .45rem}
.hero-image{position:relative;overflow:hidden;min-height:580px}
.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:60% center}
.hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(9,23,24,.8))}
.image-caption{position:absolute;z-index:1;bottom:2.5rem;left:2.5rem;right:2.5rem;font-size:.9rem;line-height:1.5;display:flex;flex-direction:column;letter-spacing:.025em}
.evidence-note{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:1.8rem;max-width:65rem}
.intro-grid,.content-intro{display:grid;grid-template-columns:1fr 1fr;gap:5rem}
.intro-copy>p:not(.large-copy),.content-intro>p{color:var(--muted)}
.intro-copy .large-copy{margin-bottom:1.2rem}
.section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:5rem;align-items:end;margin-bottom:3rem}
.section-heading>p{max-width:28rem;color:var(--muted)}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.capability-card{background:#fff;text-decoration:none;padding:2.2rem;display:flex;flex-direction:column;align-items:flex-start;transition:background .2s ease;min-height:330px}
.capability-card:hover{background:#f6f8f6}
.card-number{font-size:.875rem;color:var(--green);font-weight:600;letter-spacing:.08em}
.capability-card h3{margin-top:2rem;max-width:20ch}
.capability-card p{margin-top:1rem;font-size:1.05rem;color:var(--muted);margin-bottom:1.75rem}
.card-link{margin-top:auto;font-size:.95rem;font-weight:600;color:var(--green)}
.card-link span{margin-left:1rem}
.industry-links{border-top:1px solid var(--line)}
.industry-links>a{display:grid;grid-template-columns:3rem 1fr 1fr 1rem;align-items:center;gap:1.75rem;border-bottom:1px solid var(--line);padding:1.75rem 0;text-decoration:none}
.industry-links>a>span:first-child{font-size:.85rem;color:var(--green)}
.industry-links h3{font-size:1.65rem}
.industry-links p{font-size:1.05rem;color:var(--muted)}
.industry-links>a:hover h3{color:var(--green)}
.ink .eyebrow{color:#b4cebf}
.ink .section-heading>p,.ink .content-intro p:not(.eyebrow){color:#ced8d5}
.perspective-feature{display:grid;grid-template-columns:1fr 1fr;gap:5rem}
.contact-band{background:var(--deep);color:#fff;padding-block:4.5rem}
.contact-inner{display:grid;grid-template-columns:1.3fr 1fr;gap:5rem;align-items:center}
.contact-band .eyebrow{color:#bdd5c6}
.contact-band p:not(.eyebrow){color:#d9e5dd;margin-bottom:1.5rem;max-width:28rem}
.site-footer{padding:3.5rem 0 1.5rem;background:#fff}
.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.1fr;gap:3rem;padding-bottom:3rem}
.footer-top a:not(.brand){display:block;font-size:1rem;margin-top:.65rem;text-decoration:none}
.footer-top a:not(.brand):hover{text-decoration:underline}
.footer-top p:not(.footer-label){font-size:.95rem;color:var(--muted);margin-top:.8rem}
.footer-identity .brand{margin-left:-1rem}
.footer-identity>p{letter-spacing:.025em}
.footer-label{font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}
.footer-bottom{display:flex;justify-content:space-between;gap:1.5rem;font-size:.875rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1.5rem}
.footer-bottom a{text-decoration:none}
.page-hero{padding-block:5rem 4.5rem;background:var(--deep);color:#fff}
.page-hero .eyebrow{color:#bdd5c6}
.page-hero h1{max-width:22ch}
.page-hero .lead{color:#dbe7df}
.anchor-nav{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2.7rem}
.anchor-nav>a{font-size:.95rem;text-decoration:none;border:1px solid var(--line);padding:.6rem .9rem}
.anchor-nav>a:hover{background:var(--fog)}
.anchor-nav:not(.vertical-nav){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.anchor-nav:not(.vertical-nav)>a{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:6.25rem;padding:1rem 1.25rem;border:1px solid var(--green);background:var(--green);box-shadow:0 6px 18px rgba(0,75,50,.13);color:#fff;font-size:1.02rem;font-weight:600;line-height:1.25;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.anchor-nav:not(.vertical-nav)>a::after{content:attr(data-number);position:absolute;z-index:0;right:.6rem;bottom:-1.15rem;color:rgba(255,255,255,.14);font-family:var(--head);font-size:5.5rem;font-weight:700;line-height:1;pointer-events:none}
.anchor-nav:not(.vertical-nav)>a>span{position:relative;z-index:1}
.anchor-nav:not(.vertical-nav)>a:hover{border-color:var(--deep);background:var(--deep);box-shadow:0 9px 22px rgba(0,55,37,.2);transform:translateY(-2px)}
.anchor-nav:not(.vertical-nav)>a[aria-current="location"]{border-color:var(--green);background:var(--green);color:white;box-shadow:0 6px 18px rgba(0,75,50,.13)}
.anchor-nav:not(.vertical-nav)>a[aria-current="location"]>span:first-child{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35em}
.anchor-nav:not(.vertical-nav)>a>span:last-child{flex:none;font-size:1.3rem;line-height:1}
.service-details{margin-top:4rem}
.service-row{display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;border-top:1px solid var(--line);padding-block:3.5rem;scroll-margin-top:2rem}
.service-row:last-child{padding-bottom:0}
.service-row h2{font-size:2.2rem;margin-top:1.5rem;max-width:19ch}
.service-row .service-heading{position:relative;isolation:isolate;display:flex;align-items:center;min-height:8rem;margin:0;padding-left:1.1rem;font-size:clamp(2.2rem,3vw,2.8rem);line-height:1.12}
.service-heading::before{content:attr(data-number);position:absolute;z-index:0;left:0;top:50%;transform:translateY(-50%);color:rgba(0,75,50,.22);font-family:var(--head);font-size:8rem;font-weight:700;line-height:1;pointer-events:none}
.service-heading>span{position:relative;z-index:1}
.service-row h3{font-size:1.5rem;margin-bottom:1.25rem}
.service-row p{color:var(--muted)}
.check-list{list-style:none;margin:1.5rem 0;padding:0}
.check-list li{position:relative;padding:.75rem 0 .75rem 1.35rem;border-bottom:1px solid var(--line)}
.check-list li::before{content:'';width:5px;height:5px;background:var(--green);position:absolute;left:0;top:1.5rem}
.deliverable{background:var(--fog);padding:1.5rem;margin-top:1.75rem;border-left:3px solid var(--green)}
.deliverable .eyebrow{font-size:.75rem;margin-bottom:.6rem}
.deliverable p{color:var(--ink)}
.vertical{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-block:3.75rem;border-bottom:1px solid var(--line)}
.vertical:first-child{padding-top:0}
.vertical .vertical-sector-heading{position:relative;isolation:isolate;display:flex;align-items:center;min-height:7rem;margin:0 0 1.25rem;padding-left:1.1rem;font-size:clamp(2.2rem,3vw,2.8rem);line-height:1.12}
.vertical-sector-heading::before{content:attr(data-number);position:absolute;z-index:0;left:0;top:50%;transform:translateY(-50%);color:rgba(0,75,50,.22);font-family:var(--head);font-size:8rem;font-weight:700;line-height:1;pointer-events:none}
.vertical:is(#religious-organizations,#msp-var-product-advisory) .vertical-sector-heading{min-height:8.5rem;padding-right:11rem;font-size:clamp(2.1rem,2.4vw,2.3rem)}
.vertical:is(#religious-organizations,#msp-var-product-advisory) .vertical-sector-heading::before{left:auto;right:0}
.vertical-sector-heading>span{position:relative;z-index:1}
.vertical .vertical-question{font-size:2.35rem;letter-spacing:-.03em;line-height:1.15}
.vertical .vertical-question+p{margin-top:1.5rem;color:var(--muted)}
.vertical h3{font-size:1.15rem;letter-spacing:-.02em}
.vertical p+h3,.vertical .check-list+h3{margin-top:1.75rem}
.vertical h3+p{margin-top:.75rem;color:var(--muted)}
.vertical .check-list{margin-top:.5rem}
.vertical-focus{font-size:1rem;color:var(--muted)}
.three-up{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}
.three-up article{border-top:2px solid var(--green);padding-top:1.5rem}
.three-up p{margin-top:1rem;color:var(--muted)}
.approach-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}
.approach-steps article{border-top:2px solid var(--green);padding-top:1.25rem}
.approach-steps .card-number{display:block;margin-bottom:1rem}
.approach-steps h3{font-size:1.45rem}
.approach-steps p{margin-top:.75rem;color:var(--muted)}
.approach-assurance{max-width:70rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line)}
@media(max-width:1100px){.approach-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.experience-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:5rem;align-items:center}
.experience-hero .role{margin-top:1.2rem;font-size:1.35rem;color:#b7d0c1}
.experience-aside{border-left:1px solid #668778;padding-left:3rem;font-size:1.45rem;line-height:1.8}
.experience-aside>span{display:block;margin-top:2rem;font-size:1rem;color:#c4d8cc}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.case-grid article{background:white;padding:2.2rem}
.case-stat{display:block;font-family:var(--head);font-size:3.3rem;color:var(--green);letter-spacing:-.06em;margin:2rem 0 .5rem}
.case-grid h3{font-size:1.25rem}
.case-grid h3+p{font-size:1.05rem;color:var(--muted);margin-top:1.25rem}
.career-list article{display:grid;grid-template-columns:7rem 1fr 1fr;gap:2.5rem;padding:2rem 0;border-top:1px solid var(--line)}
.career-list article>span{font-size:1rem;color:var(--green)}
.career-list h3{font-size:1.2rem}
.career-list p{color:var(--muted);font-size:1.05rem}
.career-list h3+p{font-size:.95rem;margin-top:.7rem}
.editorial-list article{display:grid;grid-template-columns:1fr 1.15fr;gap:5rem;border-top:1px solid var(--line);padding:3.5rem 0}
.editorial-list article:first-child{border:0;padding-top:0}
.editorial-list article p:not(.eyebrow):not(.large-copy){color:var(--muted)}
.editorial-list .large-copy{margin-bottom:1.5rem}
.contact-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:6rem}
.contact-layout h2{margin-bottom:1.5rem}
.contact-layout .large-copy{font-size:1.35rem;color:var(--muted);margin-bottom:2.5rem}
.contact-method{border-top:1px solid var(--line);padding:1.2rem 0;display:flex;flex-direction:column;gap:.35rem}
.contact-method>span{font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.contact-method a{font-size:1.6rem;color:var(--green);text-decoration:none;overflow-wrap:anywhere}
.contact-method a:hover{text-decoration:underline}
.location{font-size:1rem;color:var(--muted);margin-top:1.5rem}
.conversation-guide{background:var(--fog);padding:2.5rem}
.conversation-guide h3{font-size:2rem}
.conversation-guide ul{padding:0;list-style:none;margin:1.5rem 0}
.conversation-guide li{display:flex;flex-direction:column;padding:1rem 0;border-bottom:1px solid var(--line);gap:.3rem}
.conversation-guide li>span,.conversation-guide>p:last-child{font-size:1.05rem;color:var(--muted)}
@media(min-width:1600px){.hero-content{padding-right:4.5rem}}
@media(max-width:1100px){
 .container{width:calc(100% - 4rem)}
 .header-inner{min-height:92px;flex-wrap:wrap;gap:0}
 .menu-toggle{display:flex;align-items:center;gap:.8rem;background:transparent;border:1px solid var(--line);padding:.6rem 1rem;cursor:pointer;min-height:44px;font-size:1rem}
 .menu-bars{width:17px;height:9px;border-block:1px solid var(--ink)}
 #primary-nav{flex-basis:100%;flex-wrap:wrap;padding:1rem 0 1.5rem}
 #primary-nav>a:not(.button){padding:.6rem 0}
 #primary-nav>a[aria-current=page]::after{bottom:.2rem}
 .js #primary-nav{display:none}.js #primary-nav.is-open{display:flex}
 .hero-content{padding:3.5rem 2rem}
 .hero h1{font-size:clamp(2.65rem,5.5vw,4rem)}
 .hero-image{min-height:560px}
 .hero-actions{gap:1rem}
 .section{padding-block:4.5rem}
 .intro-grid,.content-intro,.section-heading,.perspective-feature,.contact-inner,.service-row,.vertical,.editorial-list article{gap:3rem}
 .capability-grid{grid-template-columns:repeat(2,1fr)}
 .footer-top{grid-template-columns:repeat(3,1fr);gap:2rem}
 .footer-identity{grid-column:1/-1}
 .case-grid{gap:1rem}.case-grid article{padding:1.5rem}
 .experience-heading,.contact-layout{gap:3rem}
}
@media(max-width:760px){
 .container{width:calc(100% - 3rem)}
 .hero{grid-template-columns:1fr}
 .hero-content{padding:3.5rem 1.5rem}
 .hero h1{font-size:clamp(3.1rem,9vw,4.2rem)}
 .hero-lead{max-width:35rem}
 .hero-tagline{margin-top:2.5rem}
 .hero-image{min-height:300px}
 .hero-image img{object-position:center 60%}
 .image-caption{bottom:1.5rem;left:1.5rem}
 .intro-grid,.content-intro,.section-heading,.perspective-feature,.contact-inner,.service-row,.vertical,.experience-heading,.contact-layout,.editorial-list article{grid-template-columns:1fr;gap:2rem}
 .section-heading{margin-bottom:2rem}.section-heading>p{max-width:40rem}
 .industry-links>a{grid-template-columns:2rem 1fr 1rem;gap:1rem}.industry-links h3{font-size:1.4rem}.industry-links p{grid-column:2;grid-row:2}.industry-links>a>span:last-child{grid-column:3;grid-row:1}
 .contact-band{padding-block:3.5rem}
 .footer-top{grid-template-columns:1fr 1fr}.footer-top>div:last-child{grid-column:1/-1}
 .footer-bottom{flex-direction:column;gap:.75rem}
 .page-hero{padding-block:3.5rem}.page-hero h1 br{display:none}.lead{font-size:1.25rem}
 .service-row h2{max-width:none;margin-top:1rem}.service-row{padding-block:2.5rem}
 .vertical{padding-block:3rem}
 .three-up,.case-grid{grid-template-columns:1fr;gap:2rem}
 .approach-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
 .case-stat{margin-top:1.3rem}
 .career-list article{grid-template-columns:1fr;gap:.75rem}
 .experience-aside{font-size:1.2rem;padding-left:1.5rem}.experience-aside>span{margin-top:1rem}
 .conversation-guide{padding:2rem}
}
@media(max-width:460px){
 .container{width:calc(100% - 2rem)}
 .brand img{width:clamp(200px,60vw,255px);height:70px}
 .header-inner{gap:0}
 .menu-toggle{padding:.5rem .6rem;font-size:.875rem}.menu-bars{display:none}
 #primary-nav{flex-direction:column;align-items:flex-start;gap:.5rem}
 .hero-content{padding:3rem 1rem}
 .hero h1{font-size:3.1rem}
 .hero-lead{font-size:1.2rem}
 .hero-actions{align-items:flex-start;flex-direction:column}
 .hero-tagline{font-size:.85rem;letter-spacing:.02em}
 .hero-tagline span{padding:0 .2rem}
 .capability-grid{grid-template-columns:1fr}
 .capability-card{min-height:290px;padding:1.75rem}
 .large-copy{font-size:1.35rem}
 .approach-steps{grid-template-columns:1fr;gap:1.75rem}
 .footer-top{gap:2rem 1rem}
 .contact-method a{font-size:1.4rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.engagement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;background:transparent;border:0}
.engagement-grid.provider-entry-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.provider-entry-grid>.engagement-card{grid-column:span 2}
.engagement-card{display:flex;flex-direction:column;align-items:flex-start;min-height:390px;padding:2.2rem;border:2px solid #6f927d;background:#fff;box-shadow:0 8px 24px rgba(0,45,30,.09)}
.engagement-card h3{margin-top:0;max-width:20ch;font-size:1.65rem}
.engagement-card .card-number{margin-bottom:1.5rem}
.engagement-trigger{margin-top:1rem;color:var(--muted);font-size:1.05rem}
.engagement-trigger strong{color:var(--ink)}
.engagement-label{margin-top:1.8rem;font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}
.engagement-card .check-list{margin-top:.7rem;font-size:1rem}
.engagement-card .card-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:auto;padding-top:1.5rem;text-decoration:none}
.case-kicker{margin-top:0;font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}
.not-found .button{background:#fff;color:var(--deep)}
.not-found .button:hover{background:var(--fog)}
@media(max-width:1100px){.engagement-grid{grid-template-columns:1fr}.engagement-card{min-height:0}.engagement-card h3{max-width:26ch}}
@media(max-width:1100px){.engagement-grid.provider-entry-grid{grid-template-columns:1fr}.provider-entry-grid>.engagement-card{grid-column:auto}}
@media(max-width:760px){.engagement-card{padding:1.75rem}.engagement-card .card-link{margin-top:1.5rem}}
/* Three engagement examples lead; six compact service links explain the expertise. */
.expertise-section{padding-top:4rem}
.expertise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:3rem}
.expertise-item{display:flex;justify-content:space-between;align-items:start;gap:1.5rem;padding:1.5rem 0;border-top:1px solid var(--line);text-decoration:none}
.expertise-item{position:relative;isolation:isolate;overflow:hidden;min-height:8rem;padding:2rem 1rem}
.expertise-item::before{content:attr(data-number);position:absolute;z-index:0;left:.1rem;top:.1rem;color:rgba(0,75,50,.16);font-family:var(--head);font-size:6rem;font-weight:700;line-height:1;pointer-events:none}
.expertise-item>*{position:relative;z-index:1}
.expertise-item h3{font-size:1.15rem;letter-spacing:-.02em}
.expertise-item p{margin-top:.5rem;color:var(--muted);font-size:1rem;max-width:49ch}
.expertise-item>span{color:var(--green)}
.expertise-item:hover h3{text-decoration:underline;text-underline-offset:.2em}
.engagement-name{margin-top:1rem;font-size:1rem;font-weight:600;color:var(--green)}
.engagement-input{font-size:1rem;color:var(--muted);margin-top:1rem}
.related-services{margin-top:1.5rem;width:100%}
.related-services a{display:block;color:var(--green);font-size:.95rem;padding:.35rem 0}
.related-services .engagement-label{margin-top:0;margin-bottom:.5rem}
.vertical-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin:0 0 3.5rem}
.vertical-nav>a{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;min-height:9rem;padding:1.4rem 1.25rem;border:0;background:var(--deep);box-shadow:0 8px 24px rgba(0,45,30,.14);color:white;font-family:var(--head);font-size:clamp(1rem,1.2vw,1.2rem);font-weight:700;line-height:1.25;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.vertical-nav>a::after{content:attr(data-number);position:absolute;z-index:0;right:.65rem;bottom:-1.5rem;color:rgba(255,255,255,.13);font-size:7rem;font-weight:700;line-height:1;pointer-events:none}
.vertical-nav>a>span{position:relative;z-index:1}
.vertical-nav>a:hover{background:var(--green);box-shadow:0 12px 30px rgba(0,45,30,.22);transform:translateY(-3px)}
.vertical-nav>a[aria-current="location"]{background:var(--deep);color:white}
.vertical-nav>a[aria-current="location"]>span:first-child{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35em}
.vertical-nav>a>span:last-child{font-family:var(--body);font-size:1.4rem;line-height:1;flex:none}
.vertical{scroll-margin-top:2rem}
.engagement-exchange{width:100%;display:grid;gap:1rem;margin-top:1.5rem}
.exchange-part{border-top:1px solid var(--line);padding-top:1rem}
.exchange-label{margin:0 0 .25rem;color:var(--green);font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.exchange-part h4{margin:0 0 .55rem;font-family:var(--head);font-size:1.1rem;letter-spacing:-.02em;line-height:1.3}
.exchange-part>p:last-child{margin:0;color:var(--muted);font-size:1rem}
.exchange-result{margin-inline:-.9rem;padding:1rem .9rem 1.1rem;border-top:3px solid var(--green);background:#f1f7f2}
.exchange-result .check-list{margin-top:.5rem}
.experience-detail{margin-top:1.75rem;border-top:1px solid var(--line);padding-top:1rem}
.experience-detail summary{cursor:pointer;font-weight:600;color:var(--green)}
.experience-detail .check-list{font-size:1rem}
.perspective-example{margin-top:1.75rem;padding:1.5rem;background:var(--fog);border-left:3px solid var(--green)}
.perspective-example .eyebrow{margin-bottom:.7rem}
.decision-question{margin-top:1.5rem}
@media(max-width:1100px){.anchor-nav:not(.vertical-nav){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.vertical-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.vertical-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.expertise-grid{grid-template-columns:1fr}.expertise-section{padding-top:3rem}.engagement-card h3{font-size:1.5rem}}
@media(max-width:600px){.vertical-nav{grid-template-columns:1fr;gap:.7rem}.vertical-nav>a{min-height:5rem;align-items:center;font-size:1.15rem}.vertical-nav>a::after{font-size:5rem;bottom:-.8rem}}
@media(max-width:600px){.vertical .vertical-sector-heading{min-height:6rem;font-size:2.1rem}.vertical-sector-heading::before{font-size:6.5rem}.vertical:is(#religious-organizations,#msp-var-product-advisory) .vertical-sector-heading{min-height:7rem;padding-right:8.5rem;font-size:1.8rem}.service-row .service-heading{min-height:6.5rem;font-size:2.1rem}.service-heading::before{font-size:6.5rem}.vertical .vertical-question{font-size:clamp(1.8rem,7vw,2.25rem)}}
/* Mirror the numbered industry navigation on the homepage. */
.industry-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;border:0}
.industry-links>a{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;min-height:15rem;padding:1.4rem 1.25rem;border:0;background:var(--deep);box-shadow:0 8px 24px rgba(0,45,30,.14);color:white;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.industry-links>a::after{content:attr(data-number);position:absolute;z-index:0;right:.65rem;bottom:-1.5rem;color:rgba(255,255,255,.13);font-family:var(--head);font-size:7rem;font-weight:700;line-height:1;pointer-events:none}
.industry-links>a>*{position:relative;z-index:1}
.industry-links h3{max-width:19ch;padding-right:1.1rem;font-size:clamp(1.1rem,1.2vw,1.3rem);line-height:1.25}
.industry-links p{grid-column:auto;grid-row:auto;margin-top:auto;color:#d9e8de;font-size:.95rem;line-height:1.4}
.industry-links>a>span:last-child{position:absolute;top:1.3rem;right:1.1rem;grid-column:auto;grid-row:auto;font-size:1.35rem}
.industry-links>a:hover{background:var(--green);box-shadow:0 12px 30px rgba(0,45,30,.22);transform:translateY(-3px)}
.industry-links>a:hover h3{color:white;text-decoration:underline;text-underline-offset:.2em}
/* The four broad stages are cards, not a detailed process diagram. */
.approach-steps{gap:1rem}
.approach-steps article{position:relative;isolation:isolate;overflow:hidden;min-height:17rem;padding:2rem;border:0;background:var(--deep);box-shadow:0 8px 24px rgba(0,45,30,.14);color:white}
.approach-steps article::after{content:attr(data-number);position:absolute;z-index:0;right:.55rem;bottom:-1.8rem;color:rgba(255,255,255,.13);font-family:var(--head);font-size:8rem;font-weight:700;line-height:1;pointer-events:none}
.approach-steps article>*{position:relative;z-index:1}
.approach-steps .card-number{color:#c8dfd0}
.approach-steps h3{color:white}
.approach-steps p{color:#e1eee5}
@media(max-width:1100px){.industry-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.industry-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.industry-links{grid-template-columns:1fr}.industry-links>a{min-height:10rem}.industry-links>a::after{font-size:5.5rem;bottom:-1rem}.approach-steps article{min-height:13rem}.approach-steps article::after{font-size:6rem;bottom:-1rem}}
@media(max-width:600px){.anchor-nav:not(.vertical-nav){grid-template-columns:1fr}.anchor-nav:not(.vertical-nav)>a{min-height:5.5rem}}
.demo-banner{display:flex;justify-content:center;gap:.75rem;align-items:center;padding:.4rem 1rem;background:#172238;color:#fff;font-size:.78rem;letter-spacing:.045em;text-align:center}
.demo-banner strong{text-transform:uppercase;letter-spacing:.11em;color:#bde3ce}
.decision-section .engagement-grid{gap:1.1rem;background:transparent;border:0}
.decision-section .engagement-card{border-top:5px solid var(--green);box-shadow:0 10px 30px rgba(0,45,30,.075)}
.decision-section .engagement-card h3{font-size:clamp(1.55rem,2vw,2rem);line-height:1.2}
.decision-section .engagement-name{order:-1;margin:0 0 1rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.085em}
.decision-section .engagement-trigger strong{color:var(--ink)}
.decision-section .engagement-label{margin-top:1.5rem}
@media(max-width:500px){.demo-banner{flex-direction:column;gap:0;font-size:.7rem}}
/* Whitepaper previews do not contain the full, request-only documents. */
.whitepaper-filter-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-top:2.7rem}
.whitepaper-filter-heading h3{font-size:1.35rem}
.whitepaper-all{border:0;border-bottom:2px solid transparent;background:none;color:var(--green);font:600 1rem var(--body);padding:.35rem 0;cursor:pointer}
.whitepaper-all:hover,.whitepaper-all[aria-pressed="true"]{border-bottom-color:currentColor}
.whitepaper-service-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem}
.whitepaper-service-nav>button{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:6.25rem;padding:1rem 1.25rem;border:1px solid var(--green);background:var(--green);box-shadow:0 6px 18px rgba(0,75,50,.13);color:#fff;font:600 1.02rem/1.25 var(--body);text-align:left;cursor:pointer;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}
.whitepaper-service-nav>button::after{content:attr(data-number);position:absolute;z-index:0;right:.6rem;bottom:-1.15rem;color:rgba(255,255,255,.14);font-family:var(--head);font-size:5.5rem;font-weight:700;line-height:1;pointer-events:none}
.whitepaper-service-nav>button>span{position:relative;z-index:1}
.whitepaper-service-nav>button>span:last-child{flex:none;font-size:1.3rem;line-height:1}
.whitepaper-service-nav>button:hover{border-color:var(--deep);background:var(--deep);box-shadow:0 9px 22px rgba(0,55,37,.2);transform:translateY(-2px)}
.whitepaper-service-nav>button[aria-pressed="true"]{border-color:var(--green);background:var(--green);box-shadow:0 6px 18px rgba(0,75,50,.13)}
.whitepaper-service-nav>button[aria-pressed="true"]>span:first-child{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35em}
.whitepaper-result-count{margin-top:1.8rem;color:var(--muted)}
.whitepaper-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-top:1rem}
.whitepaper-card{display:flex;flex-direction:column;align-items:flex-start;min-height:22rem;padding:2rem;border:2px solid #8fac9a;background:#fff;box-shadow:0 10px 28px rgba(0,45,30,.07)}
.whitepaper-card[hidden]{display:none}
.whitepaper-card h3{font-size:1.45rem}
.whitepaper-card p{margin-top:1rem;color:var(--muted);font-size:1.04rem}
.whitepaper-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.25rem 0 1.6rem}
.whitepaper-tags span{display:inline-block;padding:.32rem .55rem;background:var(--fog);color:var(--green);font-size:.82rem;font-weight:600}
.whitepaper-card .button{margin-top:auto;padding-inline:1.2rem}
.whitepaper-empty{margin-top:1rem;padding:2rem;background:var(--fog);border-left:4px solid var(--green)}
.whitepaper-empty[hidden]{display:none}
.whitepaper-empty p{margin:0 0 .6rem}
.whitepaper-empty button{border:0;background:none;padding:0;color:var(--green);font:600 1rem var(--body);cursor:pointer}
.whitepaper-note{max-width:60rem;margin-top:1.8rem;color:var(--muted);font-size:1rem}
@media(max-width:1100px){.whitepaper-grid,.whitepaper-service-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.whitepaper-grid,.whitepaper-service-nav{grid-template-columns:1fr}.whitepaper-service-nav>button{min-height:5.5rem}.whitepaper-card{min-height:0;padding:1.55rem}.whitepaper-card .button{margin-top:1.8rem}}
