/* A consistent, restrained type system for the Concept group. */
:root{--concept-heading:'DM Sans',Arial,sans-serif}
main :is(h1,h2,h3,h4){font-family:var(--concept-heading)!important;font-weight:600;letter-spacing:-.035em;line-height:1.18}
.eyebrow{letter-spacing:1.5px;font-weight:500}.small-caps{letter-spacing:1.5px}
.group-intro h1,.partner-intro h1,.welcome-intro h1,.page-intro h1,.contact-intro h1,.project-hero h1,.showcase-hero h1{font-size:clamp(42px,5vw,68px);line-height:1.12;letter-spacing:-.045em;max-width:920px}
.service-hero-copy h1{font-size:clamp(40px,4.6vw,64px);line-height:1.12;letter-spacing:-.04em}
.showstopper .hero-global h1.concept-slogan{font-family:var(--concept-heading);font-size:clamp(52px,5.4vw,76px);line-height:1.08;letter-spacing:-.05em;max-width:650px;font-weight:600;margin-top:25px;margin-bottom:25px}
.showstopper .hero-global h1.concept-slogan .outlined-word{-webkit-text-stroke:0;text-shadow:none;color:#50c7ed}
.showstopper .immersive-hero.hero-global{height:760px;min-height:760px}.showstopper .hero-global .immersive-content{padding-top:60px}
.showstopper .hero-bottom-copy>p{max-width:430px;font-size:16px;line-height:1.75;color:#d0e0ea}.showstopper .hero-actions{gap:20px;flex-wrap:wrap}.showstopper .hero-actions .text-link{font-size:13px}
.showstopper .hero-global .primary-image,.showstopper .hero-global .primary-image:has([data-chapter-video="0"]:not([hidden])){filter:none}.showstopper .hero-global .hero-visuals:after{box-shadow:none;opacity:.65}.hero-sunlight{opacity:.3}
.hero-brand-signature>span{font-size:9px;letter-spacing:1.4px}.showstopper .film-portal{filter:none;transform:scale(.9)}
.group-teaser h2,.partner-section-head h2,.partner-profile h2,.partner-outbound h2,.welcome-story h2,.welcome-message h2,.partner-process h2,.closing-statement h2,.experience-heading h2,.atlas-heading h2,.journey-section h2,.brief-builder h2,.section-heading h2,.intro h2,.split-text h2,.work-feature h2,.cta h2,.project-paths h2{font-size:clamp(30px,3.3vw,46px);line-height:1.18;letter-spacing:-.035em;font-weight:600}
.partner-story h2,.partner-bridge h2{font-size:34px;line-height:1.2;letter-spacing:-.025em}
.thermal-card summary h3,.partner-process h3,.scope-grid h3,.service-copy h3{font-size:22px;line-height:1.25;letter-spacing:-.02em}
.group-dialog h2{font-size:40px;line-height:1.17;letter-spacing:-.035em}.group-dialog p,.partner-profile p,.partner-story p:not(.eyebrow){line-height:1.8}
.welcome-message p:not(.eyebrow){font-size:18px}.welcome-story-columns .large-copy{font-size:22px}.welcome-message h2{font-size:43px}
.belief-chapter h2{font-size:46px;letter-spacing:-.035em;line-height:1.16}.belief-chapter p{line-height:1.8}
.gallery-item h2{font-size:18px;line-height:1.35;letter-spacing:-.01em}.work-detail-copy h2{font-size:32px;line-height:1.2}.story-copy h2{font-size:40px;line-height:1.16}
.org-parent{box-shadow:0 15px 40px #00101b40}.org-node{box-shadow:none}.org-node:hover{transform:translateY(-2px)}.org-node:before{box-shadow:0 0 8px #00c2ff55}.org-spine .spine-glow{opacity:.035}
.leafy-welcome-mark{transform:none}.partner-outbound,.partner-brand-panel{box-shadow:none}.button{font-weight:600;letter-spacing:.1px}.desktop-nav>a{letter-spacing:0}
.professional-promise{padding:45px 0;border-bottom:1px solid #244d65;background:#061e31}.professional-promise>.wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:45px}.professional-promise h2{font-size:25px;line-height:1.25;margin:0 0 12px}.professional-promise h3{font-size:17px;line-height:1.4;margin:0 0 12px}.professional-promise p{font-size:14px;line-height:1.75;color:#b7cedd;margin:0}.professional-promise .eyebrow{font-size:9px;margin-bottom:14px;color:#76cde8}
@media(max-width:1100px){.showstopper .hero-global h1.concept-slogan{font-size:62px;max-width:550px}.showstopper .hero-global .immersive-content{padding-top:45px}.professional-promise>.wrap{gap:25px}}
@media(max-width:800px){.group-intro h1,.partner-intro h1,.welcome-intro h1,.page-intro h1,.contact-intro h1{font-size:50px}.service-hero-copy h1{font-size:44px}.showstopper .hero-global h1.concept-slogan{font-size:58px;max-width:520px}.showstopper .hero-bottom-copy>p{font-size:15px;max-width:380px}.partner-story h2{font-size:30px}.professional-promise>.wrap{grid-template-columns:1fr;gap:25px}.professional-promise>.wrap>div+div{padding-top:22px;border-top:1px solid #244d65}}
@media(max-width:560px){.group-intro h1,.partner-intro h1,.welcome-intro h1,.page-intro h1,.contact-intro h1{font-size:39px;line-height:1.14;letter-spacing:-.04em}.service-hero-copy h1{font-size:38px}.showstopper .hero-global h1.concept-slogan{font-size:44px;line-height:1.12;letter-spacing:-.045em;max-width:100%;margin-top:25px}.showstopper .immersive-hero.hero-global{height:780px;min-height:780px}.showstopper .hero-global .immersive-content{padding-top:36px}.showstopper .hero-bottom-copy>p{font-size:15px;max-width:310px}.showstopper .hero-actions{gap:15px}.group-teaser h2,.partner-section-head h2,.partner-profile h2,.partner-outbound h2,.welcome-story h2,.welcome-message h2,.partner-process h2,.closing-statement h2,.experience-heading h2,.atlas-heading h2,.journey-section h2,.brief-builder h2,.section-heading h2,.intro h2,.split-text h2,.work-feature h2,.cta h2,.project-paths h2{font-size:32px;line-height:1.2}.partner-story h2,.partner-bridge h2{font-size:29px}.thermal-card summary h3,.partner-process h3,.scope-grid h3,.service-copy h3{font-size:20px}.group-dialog h2{font-size:31px}.belief-chapter h2{font-size:36px}.story-copy h2{font-size:31px}.professional-promise{padding:35px 0}.welcome-intro{gap:30px}.welcome-story-columns .large-copy{font-size:20px}.welcome-message p:not(.eyebrow){font-size:16px}.partner-hero-actions .button{font-size:12px;padding:15px 18px}}
@media(prefers-reduced-motion:reduce){.org-node:hover{transform:none}}
/* Make the complete group structure easy to find and identify. */
.group-intro{padding:48px 0 20px}.group-intro h1{font-size:clamp(38px,4.5vw,60px);margin:16px 0 18px}.group-index{color:#8eddf5;text-decoration:underline;text-underline-offset:5px}
.org-chart{margin:10px auto 60px;padding-top:12px;scroll-margin-top:130px}.org-parent{padding:24px 30px}.org-parent .org-label{margin-bottom:15px}.org-parent p{margin-top:12px}
.org-branches{grid-template-rows:repeat(4,174px);row-gap:25px;padding-top:40px}.org-node{height:174px;padding:22px;gap:16px}.org-node .division-brand-logo{max-width:280px;margin:0 0 12px}.org-node h2{font-size:18px;line-height:1.3;letter-spacing:-.02em;margin:0 0 5px}.org-number{font-family:var(--concept-heading);font-size:20px;font-weight:400}.org-node p{font-size:11px;line-height:1.5}
.group-mini-grid a{min-height:120px}.mini-identity{flex:1;min-width:0}.group-mini-grid .mini-identity .division-brand-logo{width:100%;margin-bottom:14px}.group-mini-grid .mini-identity .mini-division-name{display:block;font:500 14px/1.4 var(--concept-heading);color:#e6f4fc;letter-spacing:0}.group-mini-grid .mini-number{font-family:var(--concept-heading);font-size:16px}
.project-page-hero h1{font-size:clamp(42px,5vw,68px);line-height:1.12;letter-spacing:-.045em}
@media(max-width:800px){.group-intro{padding-top:35px}.group-index{margin-top:18px}.org-branches{column-gap:40px}.org-node{padding:18px 14px;gap:10px}.org-node h2{font-size:16px}.org-node .org-number{font-size:18px}}
@media(max-width:560px){.group-intro{padding-top:30px}.group-intro h1{font-size:36px}.org-chart{margin-top:5px;scroll-margin-top:110px}.org-parent{padding:24px 20px}.org-branches{padding-top:28px;gap:16px}.org-node{height:auto;min-height:150px;padding:20px 16px}.org-node h2{font-size:17px}.org-node .division-brand-logo{margin-bottom:12px}.org-node .org-number{font-size:19px}.group-mini-grid a{min-height:120px}.project-page-hero h1{font-size:39px}}

/* Vertical page scrolling must remain available below the group parent. */
body.group-page{overflow-x:clip;overflow-y:visible}
/* Exact supplied team portraits, displayed from the original image sheet. */
.team-grid.leadership-team{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;align-items:stretch}.leadership-team article{display:flex;flex-direction:column;align-items:center;text-align:center;grid-column:span 2;gap:22px;max-width:none;padding:32px 20px;border:1px solid #2b536c;background:#08253a}.leadership-team article:nth-child(-n+2){grid-column:span 3}.leadership-portrait{display:block;flex:none;width:128px;height:128px;border-radius:50%;overflow:hidden;background:#a9aaac;border:2px solid #456579}.leadership-team h3{font-size:23px;line-height:1.25;letter-spacing:-.025em;margin:0 0 10px}.team-grid.leadership-team .leadership-role{font-size:13px;line-height:1.5;color:#d6ebf7;margin:0}.team-grid.leadership-team .leadership-area{font-size:12px;line-height:1.5;color:#9fc3d9;margin:7px 0 0}.leadership-welcome{text-align:center;margin:28px 0 0}.leadership-welcome a{font-size:14px;color:#80d3f3}.leadership-welcome a:hover{text-decoration:underline;text-underline-offset:5px}#leadership{scroll-margin-top:130px}
@media(max-width:800px){.team-grid.leadership-team{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.leadership-team article,.leadership-team article:nth-child(-n+2){grid-column:auto}.leadership-team article:last-child{grid-column:1/-1}.leadership-team h3{font-size:21px}}
@media(max-width:560px){.team-grid.leadership-team{grid-template-columns:1fr}.leadership-team article,.leadership-team article:nth-child(-n+2),.leadership-team article:last-child{grid-column:auto;flex-direction:row;text-align:left;padding:24px 20px;gap:20px}.leadership-portrait{width:104px;height:104px}.leadership-team h3{font-size:20px}.team-grid.leadership-team .leadership-role{font-size:12px}.team-grid.leadership-team .leadership-area{font-size:11px}}
