/* Homepage actions only: ruby leads to the next step, navy retains hierarchy. */
body[data-mf-route="index"]{--action-ruby:#e60000;--action-ruby-hover:#b80000;--action-ruby-light:#ffc1cc}
body[data-mf-route="index"] :is(.h3-text-link,.per-secondary,.mf-roadmap-link,.he-grid a,.he-evidence>.h3-wrap>p>a,.he-organisation>a,.more,.v14-link){color:var(--action-ruby);text-decoration-color:currentColor;text-underline-offset:4px}
body[data-mf-route="index"] :is(.h3-text-link,.per-secondary,.mf-roadmap-link,.he-grid a,.he-evidence>.h3-wrap>p>a,.he-organisation>a,.more,.v14-link):hover{color:var(--action-ruby-hover);text-decoration:underline;text-decoration-thickness:1px}
body[data-mf-route="index"] :is(.h3-card-arrow,.h3-core-more){color:var(--action-ruby)}
body[data-mf-route="index"] :is(.h3-journey,.h3-core-card):hover :is(.h3-card-arrow,.h3-core-more){color:var(--action-ruby-hover);text-decoration:underline;text-underline-offset:4px}
body[data-mf-route="index"] .mf-roadmap-link{border-bottom-color:var(--action-ruby)}
body[data-mf-route="index"] :is(.h3-btn:not(.h3-outline),.per-primary){background:var(--action-ruby)!important;border-color:var(--action-ruby)!important;color:#fff!important;box-shadow:none}
body[data-mf-route="index"] :is(.h3-btn:not(.h3-outline),.per-primary):hover{background:var(--action-ruby-hover)!important;border-color:var(--action-ruby-hover)!important;color:#fff!important;text-decoration:none}
body[data-mf-route="index"] .h3-hero-copy .h3-outline{color:#fff;border-color:#fff;background:#09283c85}
body[data-mf-route="index"] .h3-hero-copy .h3-outline:hover{background:#15364ee8;color:#fff;border-color:#fff}
body[data-mf-route="index"] .h3-hero-copy .he-workspace-link{color:#fff!important;text-decoration:underline;text-decoration-color:var(--action-ruby-light);text-underline-offset:5px}
body[data-mf-route="index"] .h3-hero-copy :is(.he-workspace-link,.h3-outline)>span[aria-hidden]{color:var(--action-ruby-light)}
body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-city-links a{color:var(--action-ruby);text-shadow:none}
body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-city-links a:hover{color:var(--action-ruby-hover);text-decoration:underline}
body[data-mf-route="index"] .h3-city-card>div>span{color:#fff;text-decoration:underline;text-decoration-color:var(--action-ruby-light);text-underline-offset:4px}
body[data-mf-route="index"] :is(.h3-text-link,.per-secondary,.mf-roadmap-link,.he-grid a,.he-evidence>.h3-wrap>p>a,.he-organisation>a,.more,.v14-link,.h3-btn,.per-primary,.h3-journey,.h3-core-card):focus-visible{outline:3px solid var(--action-ruby);outline-offset:5px}
body[data-mf-route="index"] :is(.h3-text-link,.per-secondary,.mf-roadmap-link,.he-grid a,.more,.v14-link):focus-visible{text-decoration:underline;text-underline-offset:4px}
body[data-mf-route="index"] .h3-hero-copy :is(.h3-btn,.he-workspace-link):focus-visible{outline-color:#fff;outline-width:3px}
body[data-mf-route="index"] .hd-guide .hd-steps a{color:var(--action-ruby)}body[data-mf-route="index"] .hd-guide .hd-steps a:hover{color:var(--action-ruby-hover);text-decoration:underline;text-underline-offset:4px}body[data-mf-route="index"] .hd-guide .hd-steps a:focus-visible{outline:3px solid var(--action-ruby);outline-offset:4px;text-decoration:underline}

/* Restrained refinement after restoration: homepage only, original identity retained. */
body[data-mf-route="index"] .h3-hero-description{font-size:15px;line-height:1.7;max-width:520px}
body[data-mf-route="index"] .h3-demo-note{font-size:12px;line-height:1.6;letter-spacing:0}
body[data-mf-route="index"] .h3-toolbars a{font-size:12px;line-height:1.45}
body[data-mf-route="index"] .h3-hero-copy .h3-outline{border-color:transparent;background:transparent;min-height:44px;padding-inline:0;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#d6b575}
body[data-mf-route="index"] .h3-hero-copy .h3-outline:hover{border-color:transparent;background:transparent;color:#f8d594}
@media(min-width:1051px){
 body[data-mf-route="index"] .h3-nav-link{font-size:12px;font-weight:400}
 body[data-mf-route="index"] .mfx-nav{gap:12px}
 body[data-mf-route="index"] .h3-login{font-size:12px}
}
@media(min-width:1251px){
 body[data-mf-route="index"] .h3-toolbars .h3-icon{width:26px;height:26px}
 body[data-mf-route="index"] .h3-nav-link{font-size:13px}
 body[data-mf-route="index"] .mfx-nav{gap:18px}
 body[data-mf-route="index"] .mfx-logo{width:200px}
 body[data-mf-route="index"] .mfx-in{gap:20px}
}

/* Brand artwork is decorative; foreground map and text stay fully opaque. */
body[data-mf-route="index"] .h3-hero .h3-map-panel{background:linear-gradient(105deg,rgba(255,253,247,.93),rgba(255,253,247,.84)),url("home-photos/hero-new-york-20261023-web.jpg") center/cover no-repeat;position:relative;scroll-margin-top:90px}
body[data-mf-route="index"] .h3-map-copy{min-width:0}
body[data-mf-route="index"] .h3-map-copy h2{font-size:clamp(21px,2vw,28px);line-height:1.2}
body[data-mf-route="index"] .h3-map-copy .h3-city-links{display:flex;flex-wrap:wrap;gap:8px 16px}
body[data-mf-route="index"] .h3-map-copy .map-approach{display:inline-flex;align-items:center;min-height:32px;font-size:11px;margin-top:5px;color:var(--action-ruby)}
body[data-mf-route="index"] .h3-hero + #project-evidence{position:relative;background:#f5f3ed;border-top:1px solid #dfd8ca;padding-block:40px}
body[data-mf-route="index"] .h3-hero + #project-evidence::before{content:"";position:absolute;top:0;left:max(24px,calc((100% - 1320px)/2));width:64px;height:3px;background:#b38b46}
@media(max-width:760px){
 body[data-mf-route="index"] .h3-map-copy h2{font-size:22px}
 body[data-mf-route="index"] .h3-map-copy .h3-city-links a{min-height:32px;display:inline-flex;align-items:center}
 body[data-mf-route="index"] .h3-hero + #project-evidence{padding-block:30px}
}

/* Reveal supplied office artwork; dark local gradient supports foreground contrast. */
body[data-mf-route="index"] .h3-hero .h3-map-panel{background:linear-gradient(90deg,rgba(3,24,39,.70),rgba(3,24,39,.34) 55%,rgba(3,24,39,.10)),url("home-photos/hero-new-york-20261023-web.jpg") center/cover no-repeat;border-color:#b99860}
body[data-mf-route="index"] .h3-hero .h3-map-copy h2{color:#fff;text-shadow:0 1px 5px #001422}
body[data-mf-route="index"] .h3-hero .h3-map-copy .h3-eyebrow,
body[data-mf-route="index"] .h3-hero .h3-map-label{color:#ffe0a1;text-shadow:0 1px 4px #001422}
body[data-mf-route="index"] .h3-hero .h3-map-topics{color:#fff;text-shadow:0 1px 4px #001422}
body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-city-links a,
body[data-mf-route="index"] .h3-hero .h3-map-panel .map-approach{color:#fff;text-shadow:0 1px 4px #001422;text-decoration:underline;text-underline-offset:4px}
body[data-mf-route="index"] .h3-hero .h3-map-panel a:focus-visible{outline:3px solid #ffe0a1;outline-offset:3px}

/* Minimal foreground leaves the wall logo and office artwork visible. */
body[data-mf-route="index"] .h3-hero .h3-map-panel{min-height:260px;align-items:flex-end;gap:16px;padding:18px 22px;background:linear-gradient(0deg,rgba(3,24,39,.85),rgba(3,24,39,.10) 56%,transparent 85%),url("home-photos/hero-new-york-20261023-web.jpg") center/cover no-repeat}
body[data-mf-route="index"] .h3-hero .h3-map{width:92px;min-width:92px;align-self:flex-end}
body[data-mf-route="index"] .h3-hero .h3-map img{width:92px;height:140px}
body[data-mf-route="index"] .h3-hero .h3-map-copy h2{font-size:clamp(22px,2vw,28px);margin:6px 0 0;max-width:350px}
@media(max-width:760px){
 body[data-mf-route="index"] .h3-hero .h3-map-panel{min-height:230px;padding:16px 14px;gap:12px}
 body[data-mf-route="index"] .h3-hero .h3-map{width:76px;min-width:76px}
 body[data-mf-route="index"] .h3-hero .h3-map img{width:76px;height:120px}
 body[data-mf-route="index"] .h3-hero .h3-map-copy h2{font-size:22px}
}

/* Larger schematic island dots and high-contrast labels on photographic panel. */
body[data-mf-route="index"] .h3-hero .h3-map{width:124px;min-width:124px}
body[data-mf-route="index"] .h3-hero .h3-map img{width:124px;height:152px}
@media(max-width:760px){
 body[data-mf-route="index"] .h3-hero .h3-map{width:110px;min-width:110px}
 body[data-mf-route="index"] .h3-hero .h3-map img{width:110px;height:138px}
 body[data-mf-route="index"] .h3-hero .h3-map-copy h2{font-size:20px}
}

/* Render the vector at a readable size with a solid silhouette and a quiet backing. */
body[data-mf-route="index"] .h3-hero .h3-map{width:170px;min-width:170px;background:radial-gradient(ellipse at center,rgba(3,24,39,.62),rgba(3,24,39,0) 72%)}
body[data-mf-route="index"] .h3-hero .h3-map img{display:block;width:170px;height:auto;aspect-ratio:360/390;transform:none!important;filter:none!important}
@media(max-width:760px){
 body[data-mf-route="index"] .h3-hero .h3-map-panel{min-height:260px;padding:12px;gap:8px}
 body[data-mf-route="index"] .h3-hero .h3-map{width:155px;min-width:155px}
 body[data-mf-route="index"] .h3-hero .h3-map img{width:155px;height:auto}
 body[data-mf-route="index"] .h3-map-copy .h3-eyebrow{letter-spacing:.08em;font-size:8px}
}

/* Language controls: ruby text, selected language remains distinguishable. */
body[data-mf-route="index"] .mfx-lang button{color:var(--action-ruby)}
body[data-mf-route="index"] .mfx-lang button[aria-pressed="true"]{color:var(--action-ruby);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
body[data-mf-route="index"] .mfx-lang button:focus-visible{outline:2px solid var(--action-ruby);outline-offset:3px}

/* Slightly larger header mark; stronger gold uses the same supplied vector paths. */
@media(min-width:1251px){body[data-mf-route="index"] .mfx-head .mfx-logo{width:220px}}
@media(min-width:1051px) and (max-width:1250px){body[data-mf-route="index"] .mfx-head .mfx-logo{width:190px}}
@media(min-width:351px) and (max-width:760px){body[data-mf-route="index"] .mfx-head .mfx-logo{width:190px}}
@media(max-width:350px){body[data-mf-route="index"] .mfx-head .mfx-logo{width:148px}}

/* Footer is one compact directory, with the conditional roadmap available on demand. */
body[data-mf-route="index"] .h3-footer{padding:26px 0 14px;border-top:1px solid #d8c49c}
body[data-mf-route="index"] .hf-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-bottom:18px;border-bottom:1px solid #ded8ca}
body[data-mf-route="index"] .hf-groups h2{font:600 14px/1.4 Arial,Helvetica,sans-serif;color:#12394f;margin:0 0 10px}
body[data-mf-route="index"] .hf-groups .h3-text-link{display:flex;align-items:center;gap:10px;min-height:36px;font-size:13px;font-weight:400;width:fit-content}
body[data-mf-route="index"] .hf-roadmap{margin-top:2px;scroll-margin-top:100px}
body[data-mf-route="index"] .hf-roadmap summary{cursor:pointer;min-height:36px;padding:8px 0;font-size:13px;color:#526775}
body[data-mf-route="index"] .hf-roadmap h3{font-size:19px;line-height:1.35;margin:10px 0}
body[data-mf-route="index"] .hf-roadmap p,body[data-mf-route="index"] .hf-roadmap small{font-size:12px;line-height:1.7;color:#526775}
body[data-mf-route="index"] .hf-roadmap small{display:block;margin-top:8px}
body[data-mf-route="index"] .hf-roadmap .mf-roadmap-link{font-size:12px;min-height:40px;padding:6px 0}
body[data-mf-route="index"] .h3-footer .he-organisation{margin:0;padding:8px 0;border:0}
body[data-mf-route="index"] .h3-footer .he-organisation summary{min-height:40px;padding:10px 0;font-size:12px}
body[data-mf-route="index"] .h3-foot-bottom{padding-top:8px;border-top:1px solid #e2ded4;font-size:11px;line-height:1.6}
body[data-mf-route="index"] .hf-roadmap summary:focus-visible{outline:2px solid var(--action-ruby);outline-offset:3px}
@media(max-width:600px){body[data-mf-route="index"] .hf-groups{grid-template-columns:1fr 1fr;gap:20px}body[data-mf-route="index"] .hf-assurance{grid-column:1/-1}body[data-mf-route="index"] .hf-groups .h3-text-link{min-height:44px}body[data-mf-route="index"] .hf-roadmap summary{min-height:44px}}


/* Final navigation: compact navy bar contiguous with the closing photograph. */
body[data-mf-route="index"] .h3-footer{background:#08283e;color:#e2eaf0;padding:8px 0 10px;border-top:0}
body[data-mf-route="index"] .hf-groups{display:flex;flex-wrap:wrap;gap:0 32px;padding:0;border-bottom:1px solid #ffffff25}
body[data-mf-route="index"] .hf-groups>.hf-menu{margin:0;padding:0;border:0;flex:0 1 auto}
body[data-mf-route="index"] .hf-groups>.hf-menu>summary{cursor:pointer;color:#f5e2b9;min-height:44px;padding:12px 0;font-size:13px;line-height:20px}
body[data-mf-route="index"] .hf-groups>.hf-menu[open]{flex-basis:100%;order:1}
body[data-mf-route="index"] .hf-menu-content{padding:8px 16px 14px;background:#fffdf8;color:#173b51;border-radius:3px;margin-bottom:12px}
body[data-mf-route="index"] .hf-menu-content>.h3-text-link{display:inline-flex;margin-right:24px;min-height:44px}
body[data-mf-route="index"] .hf-groups>.he-organisation[open]>p,body[data-mf-route="index"] .hf-groups>.he-organisation[open]>a{color:#fff;line-height:1.7}
body[data-mf-route="index"] .hf-groups>.he-organisation[open]>p{max-width:1000px;font-size:13px;margin:8px 0}
body[data-mf-route="index"] .hf-groups>.he-organisation[open]>a{display:inline-flex;min-height:44px;align-items:center}
body[data-mf-route="index"] .h3-footer .h3-foot-bottom{border:0;padding-top:8px;color:#c5d2dc;display:flex;flex-direction:row;justify-content:space-between;gap:12px;font-size:10px}
body[data-mf-route="index"] .hf-menu-content .h3-archive{width:100%;padding:0;margin:8px 0 0}
body[data-mf-route="index"] .hf-menu-content .h3-legacy{max-width:100%;overflow:hidden}
body[data-mf-route="index"] .hf-menu summary:focus-visible{outline:2px solid #f0ce89;outline-offset:2px}
@media(max-width:600px){body[data-mf-route="index"] .hf-groups{gap:0 14px}body[data-mf-route="index"] .hf-groups>.hf-menu{flex-basis:calc(50% - 7px)}body[data-mf-route="index"] .hf-groups>.hf-menu[open]{flex-basis:100%}body[data-mf-route="index"] .hf-groups>.hf-menu>summary{font-size:12px}body[data-mf-route="index"] .h3-footer .h3-foot-bottom{flex-direction:column;gap:3px}}


body[data-mf-route="index"] .hf-research summary{font-size:13px;min-height:44px;padding:10px 0;cursor:pointer;color:#526775}
body[data-mf-route="index"] .hf-groups>.hf-menu[open]>summary{color:#fff;background:#e60000;padding-inline:10px}

/* Client workspace directory; navigation only, not an authentication control. */
body[data-mf-route="index"] .client-access{position:relative}
body[data-mf-route="index"] .client-access>summary{cursor:pointer;list-style:none;white-space:nowrap}
body[data-mf-route="index"] .client-access>summary::-webkit-details-marker{display:none}
body[data-mf-route="index"] .ca-panel{position:absolute;right:0;top:calc(100% + 14px);width:400px;max-width:calc(100vw - 32px);background:#fffdf8;color:#12394f;padding:20px;box-shadow:0 12px 36px #03203530;border:1px solid #d8c49c;border-top:3px solid #b8872d;border-radius:3px;z-index:80}
body[data-mf-route="index"] .ca-title{font-size:17px;font-weight:600;margin:0 0 10px}
body[data-mf-route="index"] .ca-panel>a{display:block;padding:12px 0;border-bottom:1px solid #e2ddd2;min-height:44px}
body[data-mf-route="index"] .ca-panel strong{font-size:15px;color:var(--action-ruby);display:block}
body[data-mf-route="index"] .ca-panel small{font-size:12px;color:#526775;display:block;margin-top:4px;line-height:1.5}
body[data-mf-route="index"] .ca-panel .ca-limit{font-size:12px;line-height:1.6;margin-top:12px;color:#526775}
body[data-mf-route="index"] .ca-panel .ca-help{font-size:13px;color:var(--action-ruby);border:0}
body[data-mf-route="index"] .client-access summary:focus-visible,body[data-mf-route="index"] .ca-panel a:focus-visible{outline:2px solid #b8872d;outline-offset:3px}
@media(max-width:760px){body[data-mf-route="index"] .client-access .h3-small{display:flex;font-size:11px;padding:8px 10px;min-height:44px}body[data-mf-route="index"] .mfx-right .h3-login{display:none}body[data-mf-route="index"] .mfx-head .mfx-logo{width:150px}body[data-mf-route="index"] .ca-panel{position:fixed;right:16px;top:76px;max-height:calc(100dvh - 100px);overflow-y:auto}}
@media(max-width:350px){body[data-mf-route="index"] .client-access .h3-small{font-size:10px;padding-inline:7px}body[data-mf-route="index"] .mfx-head .mfx-logo{width:120px}body[data-mf-route="index"] .mfx-in{gap:6px}}

body[data-mf-route="index"] .client-access .ca-short{display:none}@media(max-width:760px){body[data-mf-route="index"] .client-access .ca-full{display:none}body[data-mf-route="index"] .client-access .ca-short{display:inline}}@media(max-width:350px){body[data-mf-route="index"] .mfx-head .mfx-logo{width:100px}body[data-mf-route="index"] .client-access .h3-small{padding-inline:6px}}

@media(max-width:760px){body[data-mf-route="index"] .mfx-lang button{min-width:34px;padding-inline:0;min-height:44px}}

/* Owner-approved lobby photograph: 20% taller panel; preserve the service board. */
body[data-mf-route="index"] .h3-hero .h3-map-panel{min-height:312px;aspect-ratio:1671/941;padding:0;display:block;background:#10283a url("home-photos/hero-new-york-20261023-web.jpg") center/contain no-repeat;overflow:hidden}
body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-map{position:absolute;right:8px;bottom:8px;width:clamp(90px,22%,145px);min-width:0;background:radial-gradient(ellipse,rgba(3,24,39,.75),rgba(3,24,39,0) 75%)}
body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-map img{width:100%;height:auto}
body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-map-copy{position:absolute;right:12px;top:8px}
@media(max-width:760px){body[data-mf-route="index"] .h3-hero .h3-map-panel{min-height:312px;background-position:center top}body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-map{width:110px;bottom:4px;right:4px}}
/* Fit the full photograph on phones without an empty lower band. */
@media(min-width:761px){body[data-mf-route="index"] .h3-hero .h3-map-panel{height:312px;min-height:312px;aspect-ratio:auto}}
@media(max-width:760px){body[data-mf-route="index"] .h3-hero .h3-map-panel{min-height:0;height:auto;aspect-ratio:1671/941;background-size:contain;background-position:center}body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-map{width:25%;right:3px;bottom:3px}body[data-mf-route="index"] .h3-hero .h3-map-panel .h3-map-copy{top:3px;right:6px}}
