:root{--shared-black:#0d0d0d;--shared-white:#fff;--shared-line:rgba(255,255,255,.2)}
body>.site-header{box-sizing:border-box!important;position:relative!important;z-index:100!important;width:100%!important;height:86px!important;display:grid!important;grid-template-columns:220px minmax(0,1fr) 210px!important;align-items:center!important;padding:0 4vw!important;background:var(--shared-black)!important;color:var(--shared-white)!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;opacity:1!important;visibility:visible!important}
body>.site-header .brand-image{display:flex!important;align-items:center!important;width:150px!important;height:70px!important;margin:0!important}
body>.site-header .brand-image img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;filter:brightness(0) invert(1)!important;opacity:1!important}
body>.site-header>nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(18px,2vw,34px)!important;width:auto!important;height:100%!important;margin:0!important;padding:0!important;opacity:1!important;visibility:visible!important}
body>.site-header>nav>a,body>.site-header .header-tools>a,body>.site-header .language-switcher>button{display:block!important;margin:0!important;padding:0!important;color:#fff!important;font:500 11px/1.2 Arial,sans-serif!important;letter-spacing:.06em!important;text-transform:none!important;text-decoration:none!important;white-space:nowrap!important;opacity:1!important;visibility:visible!important}
body>.site-header>nav>a{padding:36px 0!important}body>.site-header>nav>a.active:after{bottom:22px!important;background:#fff!important}
body>.site-header .header-tools{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:25px!important;width:auto!important;height:100%!important;color:#fff!important}
.language-switcher{position:relative!important}.language-switcher>button{display:flex!important;align-items:center!important;gap:7px!important;height:42px!important;border:0!important;background:transparent!important;cursor:pointer!important}.lang-flag{font-size:16px!important;line-height:1!important}.lang-chevron{display:inline-block!important;font-size:13px!important;transition:transform .2s}.language-switcher:hover .lang-chevron,.language-switcher.open .lang-chevron{transform:rotate(180deg)}
.language-switcher>div{box-sizing:border-box!important;position:absolute!important;z-index:110!important;top:100%!important;left:50%!important;display:grid!important;min-width:148px!important;padding:8px!important;background:#fff!important;color:#111!important;border:1px solid #ddd!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate(-50%,-4px)!important;transition:opacity .18s ease,visibility .18s ease,transform .18s ease!important}.language-switcher:hover>div,.language-switcher.open>div{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important}.language-switcher>div a{display:flex!important;align-items:center!important;gap:10px!important;margin:0!important;padding:13px 16px!important;color:#111!important;font:500 12px/1 Arial,sans-serif!important;text-decoration:none!important}.language-switcher>div a:hover,.language-switcher>div a:focus-visible{background:#f3f3f3!important}.language-switcher>div a.active{background:#e9e9e9!important}.language-switcher>div a.active:after{display:none!important;content:none!important}
body>.site-header .language-switcher>button{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:0 8px!important;white-space:nowrap!important}
body>.mobile-menu{z-index:99!important;background:#0d0d0d!important;color:#fff!important}.mobile-languages{display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding:20px!important}.mobile-languages a{display:flex!important;align-items:center!important;gap:5px!important;width:auto!important;padding:10px!important;border:1px solid rgba(255,255,255,.35)!important}.mobile-languages a.active{background:#fff!important;color:#111!important}
body>.site-footer{box-sizing:border-box!important;position:relative!important;display:block!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;padding:76px 5vw 28px!important;background:#050505!important;color:#fff!important;border:0!important;opacity:1!important;visibility:visible!important}
body>.site-footer>.footer-grid{box-sizing:border-box!important;display:grid!important;grid-template-columns:1.45fr .75fr 1fr 1.1fr!important;gap:clamp(35px,5vw,85px)!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;color:#fff!important}
body>.site-footer .footer-grid>div{display:block!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body>.site-footer .footer-intro .brand-image{display:flex!important;width:170px!important;height:75px!important;margin:0 0 26px!important;filter:none!important}body>.site-footer .footer-intro .brand-image img{width:100%!important;height:100%!important;object-fit:contain!important;filter:brightness(0) invert(1)!important}
body>.site-footer h4{margin:0 0 25px!important;color:#fff!important;font:500 13px/1.2 Georgia,serif!important;letter-spacing:.04em!important;text-transform:uppercase!important}body>.site-footer p,body>.site-footer a{color:rgba(255,255,255,.68)!important;font:400 14px/1.65 Arial,sans-serif!important;text-decoration:none!important}body>.site-footer a{display:block!important;margin:8px 0!important}body>.site-footer .footer-intro p{max-width:360px!important;margin:0!important}body>.site-footer .footer-cta{display:inline-block!important;margin-top:24px!important;padding:13px 16px!important;background:#fff!important;color:#111!important;font-weight:600!important}
body>.site-footer>.footer-bottom{box-sizing:border-box!important;display:flex!important;justify-content:space-between!important;gap:20px!important;width:100%!important;margin:55px 0 0!important;padding:23px 0 0!important;border-top:1px solid var(--shared-line)!important;color:rgba(255,255,255,.48)!important;font:11px/1.3 Arial,sans-serif!important}

/* One visual language for every interior-page hero. */
body:not(.page-home){--shared-page-hero-image:url('/assets/editorial/h2m-story-hero-v1.jpg')}
body:is(.page-our-story,.page-about-story,.page-about-company,.page-about-perspective,.page-about){--shared-page-hero-image:url('/assets/editorial/h2m-story-hero-v1.jpg')}
body:is(.page-our-brands,.page-brands,.page-hospitality,.page-about-portfolio){--shared-page-hero-image:url('/assets/editorial/h2m-responsible-coast-v1.jpg')}
body:is(.page-our-services,.page-services,.page-management,.page-about-owners,.page-vision){--shared-page-hero-image:url('/assets/editorial/h2m-owner-advisory-v1.jpg')}
body:is(.page-our-works,.page-projects,.page-design-studio,.page-development,.page-hospitality-design,.page-about-responsibility){--shared-page-hero-image:url('/assets/editorial/h2m-design-courtyard-v1.jpg')}
body:is(.page-our-journal,.page-journal,.page-insight,.page-about-recognition,.page-contact,.page-partners,.page-about-careers,.page-about-leadership){--shared-page-hero-image:url('/assets/editorial/h2m-team-operations-v1.jpg')}
body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child{box-sizing:border-box!important;position:relative!important;isolation:isolate!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;gap:22px!important;width:100%!important;min-height:clamp(540px,68svh,760px)!important;height:auto!important;margin:0!important;padding:clamp(70px,9vh,110px) 7vw 72px!important;overflow:hidden!important;border:0!important;background-color:#252725!important;background-image:linear-gradient(90deg,rgba(8,10,9,.8) 0%,rgba(8,10,9,.5) 52%,rgba(8,10,9,.16) 100%),var(--shared-page-hero-image)!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;color:#fff!important;text-align:left!important}
body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child>*{position:relative!important;z-index:1!important;box-sizing:border-box!important;max-width:1100px!important;margin-left:0!important;margin-right:0!important}
body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child>div:has(h1){width:min(1100px,100%)!important;padding:0!important}
body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child h1{max-width:1000px!important;margin:18px 0 0!important;color:#fff!important;font:400 clamp(44px,5.2vw,76px)/.98 var(--serif,Georgia,serif)!important;letter-spacing:-.035em!important;text-wrap:balance!important}
body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child :is(p,span){color:rgba(255,255,255,.86)!important}
body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child>p,body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child>div:not(:has(h1)),body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child h1+div{max-width:760px!important;color:rgba(255,255,255,.82)!important;font:16px/1.65 Arial,sans-serif!important}
body:not(.page-home) main>:first-child :is(.management-editorial-image,.partners-hero-image,.belief-opening-image,.belief-opening-shade,.perspective-editorial-shade){display:none!important}
body:is(.page-team-member,.page-brand) main>:first-child{min-height:clamp(540px,68svh,760px)!important}
body:is(.page-team-member,.page-brand) main>:first-child h1{font-size:clamp(44px,5.2vw,76px)!important;line-height:.98!important;letter-spacing:-.035em!important}
body.page-contact:not(.page-home):not(.page-team-member):not(.page-brand) main>.plain-contact-heading{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
body.page-team-member .team-detail-hero{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:30px!important;width:100%!important;padding:52px 7vw 62px!important;background:#111!important;color:#fff!important}
body.page-team-member .team-detail-back{align-self:flex-start!important;color:rgba(255,255,255,.72)!important;border-color:rgba(255,255,255,.45)!important}
body.page-team-member .team-detail-grid{display:grid!important;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)!important;align-items:center!important;gap:clamp(55px,7vw,110px)!important;width:100%!important;max-width:1180px!important;margin:0 auto!important}
body.page-team-member .team-detail-grid figure{width:100%!important;height:clamp(390px,50svh,520px)!important;margin:0!important;overflow:hidden!important;background:#252525!important}
body.page-team-member .team-detail-grid figure img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 20%!important}
body.page-team-member .team-detail-heading{padding:0!important;color:#fff!important}
body.page-team-member .team-detail-heading :is(h1,h2,p){color:#fff!important}
body.page-team-member .team-detail-heading h1{margin:24px 0 18px!important}
body.page-team-member .team-detail-heading h2{margin:0 0 34px!important;color:rgba(255,255,255,.72)!important}
body.page-team-member .team-detail-heading .team-detail-intro{max-width:680px!important;color:rgba(255,255,255,.72)!important;font:16px/1.68 Arial,sans-serif!important}
html[dir="rtl"] body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child{align-items:flex-start!important;text-align:right!important;background-image:linear-gradient(270deg,rgba(8,10,9,.8) 0%,rgba(8,10,9,.5) 52%,rgba(8,10,9,.16) 100%),var(--shared-page-hero-image)!important}
/* Keep the contact-form anti-spam field out of RTL width calculations. */
.plain-contact-form [aria-hidden="true"][style*="-9999px"]{box-sizing:border-box!important;position:fixed!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}
@media(max-width:1100px){body>.site-header{grid-template-columns:180px minmax(0,1fr) 175px!important;padding:0 24px!important}body>.site-header>nav{gap:16px!important}body>.site-header>nav>a,body>.site-header .header-tools>a,body>.site-header .language-switcher>button{font-size:10px!important}}
@media(max-width:900px){body{padding-top:72px!important}body>.site-header{position:fixed!important;top:0!important;right:0!important;left:0!important;height:72px!important;grid-template-columns:1fr auto!important;padding:0 20px!important}body>.site-header .brand-image{width:140px!important;height:62px!important}body>.site-header>nav,body>.site-header .header-tools{display:none!important}body>.site-header .menu-toggle{display:block!important;width:48px!important;height:42px!important;padding:9px!important;color:#fff!important}body>.site-header .menu-toggle span{display:block!important;width:27px!important;height:1px!important;margin:5px auto!important;background:#fff!important}body>.mobile-menu{position:fixed!important;inset:72px 0 0!important;width:auto!important;max-width:none!important;overflow:auto!important}body>.mobile-menu>a{display:block!important;grid-template-columns:none!important;padding:17px 20px!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.18)!important;font-size:15px!important}.home-message{right:22px!important;width:auto!important;max-width:none!important}.home-message h1,.home-title{max-width:100%!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}body>.site-footer>.footer-grid{grid-template-columns:1fr 1fr!important;gap:48px 30px!important}}
@media(max-width:560px){body>.site-footer{padding:58px 22px 25px!important}body>.site-footer>.footer-grid{grid-template-columns:1fr!important;gap:42px!important}body>.site-footer>.footer-bottom{display:grid!important;gap:10px!important;margin-top:42px!important}body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child{min-height:calc(68svh - 20px)!important;padding:52px 22px 42px!important;gap:16px!important}body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child h1,body:is(.page-team-member,.page-brand) main>:first-child h1{font-size:clamp(36px,10vw,46px)!important;line-height:1.02!important}body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child>p,body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child>div:not(:has(h1)),body:not(.page-home):not(.page-team-member):not(.page-brand) main>:first-child h1+div{font-size:15px!important;line-height:1.55!important}body.page-team-member .team-detail-hero{padding:38px 22px 52px!important;gap:24px!important}body.page-team-member .team-detail-grid{grid-template-columns:1fr!important;gap:34px!important}body.page-team-member .team-detail-grid figure{height:420px!important}body.page-team-member .team-detail-heading h1{margin:18px 0 12px!important}body.page-team-member .team-detail-heading h2{margin-bottom:24px!important}body.page-team-member .team-detail-heading .team-detail-intro{font-size:15px!important;line-height:1.6!important}}

/* Database-driven desktop navigation and About mega menu. */
body>.site-header>nav>.header-nav-item{box-sizing:border-box!important;position:relative!important;display:flex!important;align-items:center!important;height:100%!important;gap:2px!important}
body>.site-header>nav>.header-nav-item>a,body>.site-header>nav>.header-nav-item>button{box-sizing:border-box!important;display:flex!important;align-items:center!important;height:100%!important;margin:0!important;color:#fff!important;background:transparent!important;border:0!important;text-decoration:none!important;font:500 11px/1.2 Arial,sans-serif!important;letter-spacing:.06em!important;text-transform:none!important;white-space:nowrap!important}
body>.site-header>nav>.header-nav-item>button{width:20px!important;padding:0!important;justify-content:center!important;cursor:pointer!important}
body>.site-header>nav>.header-nav-item>button span,.lang-chevron{box-sizing:border-box!important;display:block!important;width:6px!important;height:6px!important;margin-top:-3px!important;border:0!important;border-right:1px solid currentColor!important;border-bottom:1px solid currentColor!important;font-size:0!important;line-height:0!important;transform:rotate(45deg)!important;transform-origin:50% 50%!important;transition:transform .18s ease!important}
body>.site-header>nav>.header-nav-item:hover>button span,body>.site-header>nav>.header-nav-item.open>button span,.language-switcher:hover .lang-chevron,.language-switcher.open .lang-chevron{transform:rotate(225deg)!important}
body>.site-header>nav>.header-nav-item.active>a{position:relative!important}
body>.site-header>nav>.header-nav-item.active>a:after{content:""!important;position:absolute!important;right:0!important;bottom:22px!important;left:0!important;height:1px!important;background:#fff!important}
.header-submenu{box-sizing:border-box!important;position:fixed!important;z-index:120!important;top:86px!important;left:50vw!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1px!important;width:min(1120px,92vw)!important;padding:22px!important;background:#fff!important;border:1px solid #ddd!important;box-shadow:0 22px 48px rgba(0,0,0,.18)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate(-50%,-7px)!important;transition:opacity .18s ease,visibility .18s ease,transform .18s ease!important}
.header-nav-item:hover>.header-submenu,.header-nav-item.open>.header-submenu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important}
.header-submenu>a{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-height:54px!important;margin:0!important;padding:14px 16px!important;color:#171717!important;background:#f6f6f4!important;border:1px solid transparent!important;text-decoration:none!important;font:500 13px/1.3 Arial,sans-serif!important;letter-spacing:.01em!important}
.header-submenu>a:hover,.header-submenu>a:focus-visible{background:#ecece8!important;border-color:#d7d7d1!important}
.header-submenu>a span{flex:0 0 auto!important;color:#555!important}
.mobile-nav-group{display:block!important;border-bottom:1px solid rgba(255,255,255,.18)!important}
.mobile-nav-parent{display:grid!important;grid-template-columns:minmax(0,1fr) 58px!important;align-items:stretch!important}
.mobile-nav-parent>a{display:flex!important;align-items:center!important;padding:17px 20px!important;color:#fff!important;text-decoration:none!important;font-size:15px!important}
.mobile-nav-parent>button{display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;background:transparent!important;border:0!important;border-left:1px solid rgba(255,255,255,.18)!important;font-size:18px!important;cursor:pointer!important}
.mobile-nav-group.open .mobile-nav-parent>button{transform:rotate(180deg)!important}
.mobile-submenu{display:none!important;padding:4px 14px 14px!important;background:#171717!important}
.mobile-nav-group.open>.mobile-submenu{display:grid!important;grid-template-columns:1fr!important}
.mobile-submenu>a{display:block!important;padding:13px 12px!important;color:rgba(255,255,255,.78)!important;border-bottom:1px solid rgba(255,255,255,.1)!important;text-decoration:none!important;font:13px/1.35 Arial,sans-serif!important}
.mobile-submenu>a:last-child{border-bottom:0!important}
html[dir="rtl"] .mobile-nav-parent>button{border-right:1px solid rgba(255,255,255,.18)!important;border-left:0!important}
@media(max-width:1100px) and (min-width:901px){body>.site-header>nav>.header-nav-item>a,body>.site-header>nav>.header-nav-item>button{font-size:10px!important}.header-submenu{width:94vw!important}}
@media(max-width:900px){.header-submenu{display:none!important}}
@media(max-width:620px){.header-submenu{grid-template-columns:1fr!important}}
