@font-face{font-family:'Hanken Fallback';src:local('Arial');font-display:swap;font-weight:400 600;size-adjust:98.1173%;ascent-override:101.9189%;descent-override:30.8814%;line-gap-override:0.0000%}
@font-face{font-family:'Spectral Fallback';src:local('Georgia');font-display:swap;font-weight:600;size-adjust:103.8172%;ascent-override:102.0062%;descent-override:44.5976%;line-gap-override:0.0000%}
/* Paint readable local text immediately; metric-adjusted fallbacks limit reflow when self-hosted faces swap in. */
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/hanken-grotesk-400.woff2') format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/hanken-grotesk-500.woff2') format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/hanken-grotesk-600.woff2') format('woff2')}
@font-face{font-family:'Spectral';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/spectral-600.woff2') format('woff2')}
/* Bounded mission and consultation surfaces; shared site identity retained. */
/* Role tokens use only the existing font families (self-hosted WOFF2 faces); no synthetic weights. */
.mission-journey h1,.mission-journey h2,.mission-journey h3{text-wrap:balance}
.mission-journey .hero{padding-top:64px;padding-bottom:40px}
.mission-journey .hero h1{max-width:780px;margin-left:auto;margin-right:auto}
.mission-journey .hero .mission-promise{color:var(--navy);font-size:clamp(21px,2.3vw,26px);max-width:740px;margin-bottom:18px}
.mission-journey .hero .mission-intro{font-size:18px;max-width:730px;margin-bottom:28px}
.mission-trust{display:flex;align-items:center;justify-content:center;gap:18px;text-align:left;margin:32px auto 0;max-width:660px}
.mission-trust img{width:76px;height:88px;object-fit:cover;object-position:50% 22%;border-radius:8px;flex-shrink:0}
.mission-journey .mission-trust p{font-size:15px;margin:4px 0 0;color:var(--ink-soft)}
.mission-outcomes{padding-top:32px}
.mission-outcomes .container{border-top:1px solid var(--paper-line2);padding-top:36px}
.mission-outcomes h2{font-size:26px}
.mission-journey .btn{white-space:normal;min-height:48px;font-size:16px;text-align:center}
.mission-journey .btn svg{flex-shrink:0}
.mission-journey .eyebrow,.mission-journey .kicker,.mission-journey .card-label{font-size:13px;letter-spacing:.08em;white-space:normal;color:var(--blue-hover)}
.mission-journey .keybox dt,.mission-journey .breadcrumb,.mission-journey .breadcrumb a,.mission-journey .blog-card-meta{color:var(--muted);font-size:14px}
.mission-journey .keybox{border-left-width:1px}
.mission-journey a:focus-visible,.mission-journey button:focus-visible,.mission-journey summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.mission-journey p a{text-decoration:underline;text-underline-offset:3px}
.mission-journey .journey-note{font-size:15px;color:var(--ink-soft)}
.mission-journey .booking-intro{padding-bottom:24px}
.booking-intro .container{max-width:1000px}
.booking-intro .breadcrumb{margin-bottom:28px}
.booking-intro h1{margin-bottom:20px}
.booking-intro p{max-width:750px}
.booking-intro .booking-lead{font-size:21px;color:var(--ink-soft)}
.booking-intro .hero-buttons{justify-content:flex-start;margin:24px 0 18px}
.mission-journey .booking-calendar{padding-top:24px;scroll-margin-top:110px}
.booking-frame{background:#fff;border:1px solid var(--paper-line2);border-radius:14px;margin:24px 0 18px}
.booking-small-screen{display:none}
/* Microsoft’s time grid needs 350px: use the full mobile width, not clipping or scaling. */
@media(max-width:600px){.booking-frame{margin-left:calc(0px - var(--pad));margin-right:calc(0px - var(--pad));border:0;border-radius:0}}
@media(max-width:349px){.booking-frame{display:none}.booking-small-screen{display:block}}
.booking-frame iframe{display:block;width:100%;height:760px;border:0}
.mission-journey .footer-brand p[style],.mission-journey .footer-bottom,.mission-journey .footer-bottom p{color:#9fb3c8!important}
@media(max-width:1050px){.mission-journey .nav-links{gap:16px}.mission-journey .nav-cta{padding:10px 12px}}
@media(max-width:820px){.mission-journey .mobile-toggle{display:flex;min-height:44px;min-width:44px;justify-content:center;align-items:center}.mission-journey .nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:4px;background:var(--paper);border-bottom:1px solid var(--paper-line);padding:16px var(--pad);display:none}.mission-journey .nav-links.active{display:flex}.mission-journey .nav-links a{display:flex;align-items:center;min-height:44px;padding:10px 12px}.mission-journey .nav-cta{justify-content:center}}
@media(max-width:600px){.mission-journey .hero{padding-top:40px}.mission-journey .hero h1{font-size:40px}.mission-trust{align-items:flex-start;gap:14px}.mission-trust img{width:64px;height:78px}.mission-journey .mission-trust p{font-size:15px}.mission-outcomes h2{font-size:25px}.mission-journey .eyebrow{font-size:13px}.booking-frame iframe{height:820px}.mission-journey .keybox{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mission-journey *,.mission-journey *::before,.mission-journey *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.mission-journey .feature-card:hover,.mission-journey .blog-card:hover,.mission-journey .btn:active{transform:none}}

/* Shared consulting type scale, deliberately scoped to these three routes. */
.mission-journey{--type-h1:clamp(2.375rem,1.864rem + 2.095vw,3.75rem);--type-h2:clamp(1.875rem,1.689rem + .762vw,2.375rem);--type-card:clamp(1.3125rem,1.243rem + .286vw,1.5rem);--type-body:clamp(1.0625rem,1.039rem + .0953vw,1.125rem);--muted:#4b5967;--muted-2:#4b5967;font-size:var(--type-body);font-synthesis:none;letter-spacing:0}
.mission-journey h1,.mission-journey .hero h1{font-size:var(--type-h1);font-weight:600;line-height:1.12;font-style:normal;letter-spacing:-.015em;color:var(--navy);text-wrap:balance}
.mission-journey h1 .text-gradient{font:inherit;color:inherit}
.mission-journey h2{font-size:var(--type-h2);font-weight:600;line-height:1.2;letter-spacing:-.015em}
.mission-journey h3,.mission-journey .mission-outcomes h2,.mission-journey .faq summary{font-family:var(--font-body);font-size:var(--type-card);font-weight:600;line-height:1.3;letter-spacing:0;font-style:normal}
.mission-journey p,.mission-journey .hero p,.mission-journey .feature-card p,.mission-journey .blog-card p,.mission-journey .faq details>div,.mission-journey .faq details>p,.mission-journey .keybox li,.mission-journey .keybox dd{font-family:var(--font-body);font-size:var(--type-body);font-weight:400;line-height:1.6;letter-spacing:0;max-width:33.6em}
.mission-journey .lead-statement{font-family:var(--font-body);font-style:normal;letter-spacing:0}
.mission-journey .feature-card p,.mission-journey .blog-card p,.mission-journey .mission-outcomes p,.mission-journey .grid-4 p{text-align:left}
.mission-journey .hero .mission-promise,.mission-journey .booking-intro .booking-lead{font-size:var(--type-body);line-height:1.6;font-weight:500;max-width:33.6em}
.mission-journey .hero .mission-intro{font-size:var(--type-body);max-width:33.6em}
.mission-journey .nav-links a,.mission-journey .btn,.mission-journey .arrow-link{font-family:var(--font-body);font-size:16px;line-height:1.4;font-weight:600;letter-spacing:0}
.mission-journey .nav-links a:not(.nav-cta){font-weight:500}
.mission-journey .mission-trust p,.mission-journey .journey-note,.mission-journey .breadcrumb,.mission-journey .breadcrumb a,.mission-journey .blog-card-meta,.mission-journey .tag,.mission-journey .footer p,.mission-journey .footer-links a,.mission-journey .footer-bottom{font-family:var(--font-body);font-size:15px;line-height:1.5;font-weight:400;letter-spacing:0}
.mission-journey .eyebrow,.mission-journey .kicker,.mission-journey .card-label,.mission-journey .keybox dt,.mission-journey .footer h4{font-family:var(--font-body);font-size:13px;line-height:1.4;font-weight:600;letter-spacing:.08em}
.mission-journey .course strong{font-size:var(--type-card);line-height:1.3}
.mission-journey .course .code,.mission-journey .step-num{font-family:var(--font-body);font-style:normal;font-weight:600;letter-spacing:0;line-height:1.3}
/* Neutralize legacy inline type sizes without disturbing layout or copy. */
.mission-journey main h3[style],.mission-journey section h3[style]{font-size:var(--type-card)!important}
.mission-journey section p[style]{font-size:var(--type-body)!important;line-height:1.6}
.mission-journey .course .code[style]{font-family:var(--font-body)!important;font-style:normal!important;font-size:15px!important}
.mission-journey .footer-brand p[style]{font-size:15px!important}
.mission-journey .card-label{color:var(--blue-hover)}
.mission-journey .grid>*{min-width:0}

.mission-journey{--font-body:'Hanken Grotesk','Hanken Fallback',Arial,sans-serif;--font-head:'Spectral','Spectral Fallback',Georgia,serif}
