/* Matching visible heading groups compensates the free fonts' own ascenders. */
.hero-content{display:none}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.24) 48%,transparent 85%),linear-gradient(0deg,rgba(0,0,0,.32),transparent 80%)}
.hero-slogan{position:absolute;z-index:1;left:50px;right:50px;bottom:clamp(112px,15svh,180px);color:#fff;pointer-events:none;text-shadow:0 2px 18px rgba(0,0,0,.2)}
.hero .hero-slogan-title{max-width:1050px;margin:0;font:500 clamp(30px,3.05vw,58px)/1.6 var(--display);letter-spacing:.07em;overflow-wrap:normal;word-break:normal}
.hero-slogan-title>span{white-space:nowrap}
.hero-slogan-intro{margin:20px 0 0;font:400 15px/1.9 var(--font-sans);letter-spacing:.02em}
.hero-slogan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:30px;margin-top:28px}
.hero-slogan-actions a{display:inline-flex;align-items:center;gap:15px;min-height:44px;pointer-events:auto;font:700 14px/1.5 var(--font-sans);letter-spacing:-.28px}
.hero-slogan-actions a>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:#111;text-shadow:none;overflow:hidden;flex:none}
.hero-slogan-actions svg{display:block;width:8px;height:12px;fill:currentColor;overflow:visible}
.hero-slogan-actions a:focus-visible{outline:2px solid #fff;outline-offset:6px;border-radius:2px}
.hero-slogan-actions a:focus-visible svg{animation:marutomo-arrow-right .5s cubic-bezier(.165,.84,.44,1)}
@media(hover:hover) and (pointer:fine){.hero-slogan-actions a:hover svg{animation:marutomo-arrow-right .5s cubic-bezier(.165,.84,.44,1)}}
@media(min-width:701px) and (max-height:650px){.hero-slogan{bottom:105px}.hero .hero-slogan-title{font-size:32px;line-height:1.5}.hero-slogan-intro{margin-top:12px;font-size:14px}.hero-slogan-actions{margin-top:16px}}
@media(max-width:700px){.hero-slogan{left:30px;right:30px;bottom:100px}.hero .hero-slogan-title{font-size:clamp(24px,6.6vw,32px);line-height:1.65;letter-spacing:.035em;max-width:480px}.hero-slogan-intro{font-size:12px;line-height:1.9;margin-top:18px;letter-spacing:0}.hero-slogan-actions{gap:12px 22px;margin-top:24px}.hero-slogan-actions a{font-size:11px;gap:10px}.hero-slogan-actions a>span{width:36px;height:36px}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.62),rgba(0,0,0,.36) 60%,transparent 100%)}}
@media(max-width:360px){.hero-slogan{left:24px;right:24px;bottom:82px}.hero .hero-slogan-title{font-size:24px;letter-spacing:0}.hero-slogan-actions{gap:14px}.hero-slogan-actions a{gap:7px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.hero-slogan-actions svg{animation:none!important}}
.film-caption,.film-credit{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.hero-bottom{bottom:36px}
.hero-bottom .motion-toggle{position:relative;border-radius:50%;background:rgba(0,0,0,.18)}
.hero-bottom .motion-toggle::after{content:'';position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
.global-heading .global-statement{font:500 21px/1.78 var(--display);letter-spacing:.07em;margin:0}
.global-heading .hero-intro{font:400 14px/1.7 var(--font-sans);letter-spacing:-.28px;margin-top:10px}
.global-heading+.sr-only+.global-intro{margin-top:5px;text-wrap:balance}
.global-section{padding:0}
.global-layout{grid-template-columns:61.82% 38.18%}
.global-copy{max-width:none;width:100%;margin:0;padding:25px 45px}
.global-copy>.panel-link{font-size:0;gap:0}
.global-copy>.panel-link>span{width:72px;height:72px}
.metric-controls{max-width:430px;gap:8px;margin:6px auto 22px;justify-content:center}
.metric-controls [data-metric-select]{font-size:0;min-width:44px;width:44px;height:44px;min-height:44px;display:grid;place-items:center}
.metric-controls [data-metric-select]::before{content:'';display:block;width:14px;height:2px;background:#bbb}
.metric-controls [data-metric-select].is-active::before{background:#111}
.metric-controls [data-metric-select]::after{display:none}
.metric-controls button:focus-visible{outline:2px solid #333;outline-offset:2px}
.globe-caption{font-size:11px}

.property-feature .residence-welcome-image{object-position:center 75%}
.property-feature-copy{position:static;width:61.82%;justify-self:start;padding:0;gap:0}
.property-feature-heading,.service-theme-heading{height:50px;position:relative;width:100%}
.property-feature-heading>.eyebrow,.service-theme-heading>.eyebrow{position:absolute;top:-10px;left:0;right:0;margin:0;font:700 21px/1.73 var(--font-latin);letter-spacing:-.28px}
.property-feature-heading>h2,.service-theme-heading>h2{position:absolute;top:21.33px;left:0;right:0;margin:0;font:500 21px/1.78 var(--display);letter-spacing:.07em}
.property-feature .panel-link{position:static;margin:50px 0 0;gap:0;font-size:0;line-height:0}
.property-feature .panel-link::after{content:'';position:absolute;inset:0;z-index:2}
.property-feature .image-label{pointer-events:none}
.property-feature:has(.panel-link:focus-visible){outline:2px solid white;outline-offset:-5px}

.home-service-section{margin:20px;position:relative}
.service-theme{display:block;position:relative;width:100%;max-width:100%;min-width:0;aspect-ratio:3/1;overflow:hidden;border-radius:3px;background:linear-gradient(180deg,#fff,var(--service-wash,#eaf4ff));color:#343c3c}
.inner-page .service-orbit.service-fusion{background:linear-gradient(180deg,#fff,var(--service-wash,#eaf4ff));border-radius:3px}
.service-theme .service-theme-art{position:absolute;right:0;top:50%;width:50%;height:98%;transform:translateY(-50%);pointer-events:none}
.service-theme-art>svg{width:100%;height:100%;display:block}
.service-theme-copy{position:absolute;inset:0 auto 0 0;width:61.82%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.service-theme-intro{margin-top:26px;font-size:13px;line-height:1.9;color:#56605f}
.service-theme .panel-link{margin-top:28px;font-size:0;line-height:0;gap:0}
.service-theme .panel-link>span{width:72px;height:72px;background:#fff}
.service-theme h2>br{display:none}
.service-theme:focus-visible{outline:2px solid #4d6264;outline-offset:-5px}
.service-theme-controls{position:absolute;bottom:17px;left:30px;display:flex;align-items:center;gap:18px;color:#4a5555;font-size:11px}
.service-theme-controls>span{font-family:var(--font-latin);letter-spacing:.08em}
.service-theme-controls>button{font:inherit;color:inherit;border:1px solid #a7b2ae;background:transparent;border-radius:20px;min-height:44px;padding:4px 12px;cursor:pointer}
.service-theme-controls>button:focus-visible{outline:2px solid #343c3c;outline-offset:3px}
.service-theme-controls>button:hover{background:#e3e8e4}
.fusion-fallback{display:grid;place-content:center;height:100%;min-height:260px;text-align:center;font-size:15px;line-height:2.4;color:#435254;background:radial-gradient(ellipse,#d8e2df,transparent 68%)}
.service-orbit.service-fusion{min-height:0;max-width:600px;width:100%;margin:auto;overflow:visible}
.service-concerns .concern-list button[aria-pressed=true],.service-concerns .concern-list button.is-active{color:#344e50;border-color:#637f7e;background:#e6ece8}
.service-concerns .concern-list button[aria-pressed=true]>span{color:#344e50}
.service-concerns .concern-list button{padding-left:10px}
.service-concerns .concern-copy p{color:#515a56}
@media(min-width:701px) and (max-width:1100px){.service-theme{min-height:330px;aspect-ratio:2.4/1}.service-theme-copy{width:51%;padding-bottom:48px}.service-theme-heading>h2{font-size:19px}.service-theme-intro{font-size:12px}}
@media(hover:hover) and (pointer:fine){.service-theme:hover .panel-link>span>svg{animation:marutomo-arrow-right .5s cubic-bezier(.165,.84,.44,1)}}
.service-theme:focus-visible .panel-link>span>svg,.service-theme:active .panel-link>span>svg{animation:marutomo-arrow-right .5s cubic-bezier(.165,.84,.44,1)}
@media(max-width:1279px) and (min-width:701px){.global-layout{height:auto;aspect-ratio:auto;min-height:450px}.global-copy{padding:25px}.global-heading .hero-intro,.global-copy>.global-intro{max-width:none;text-wrap:balance}.global-heading .hero-intro .mobile-type-break{display:block}.global-copy>.panel-link>span{width:52px;height:52px}}
@media(max-width:700px){
 .hero-bottom{bottom:22px}
 .global-section{padding:0}
 .global-layout{display:block;position:relative;aspect-ratio:auto;min-height:0;padding:30px}
 .global-copy{width:100%;padding:0;margin:0;text-align:left}
 .global-heading .global-statement{font-size:16px;line-height:1.5}
 .global-heading .hero-intro{font-size:12px;line-height:1.7;letter-spacing:-.2px;max-width:240px}
 .global-copy>.panel-link{font-size:0;margin-top:18px;min-width:44px;min-height:44px;justify-content:center}
 .global-copy>.panel-link>span{width:36px;height:36px}
 .enhanced .metrics{max-width:154px;margin:25px 0 0}
 .global-copy .metric-description{max-width:154px}
 .metric-controls{justify-content:flex-start;max-width:none;margin:6px 0 10px;gap:5px}
 .globe-composition{right:0;top:155px;width:168px;height:168px}
 .globe-caption{font-size:11px;line-height:1.4;bottom:-32px;left:0;right:0;transform:none;white-space:normal;text-wrap:balance;letter-spacing:0}
 .property-feature-copy{width:100%;height:100%;padding:30px;align-items:flex-start;text-align:left}
 .property-feature-heading,.service-theme-heading{height:32px}
 .property-feature-heading>.eyebrow,.service-theme-heading>.eyebrow{top:-5px;font-size:16px;line-height:1.5}
 .property-feature-heading>h2,.service-theme-heading>h2{top:12px;font-size:16px;line-height:1.5}
 .property-feature .panel-link{margin-top:28px;gap:0;font-size:0}
 .home-service-section{margin:14px}
 .service-theme{aspect-ratio:auto;height:510px}
 .service-theme-copy{inset:0;padding:26px 30px;width:100%;align-items:flex-start;justify-content:flex-start;text-align:left}
 .service-theme-heading{height:32px}
 .service-theme-heading>h2{max-width:none;font-size:16px}
 .service-theme h2>br{display:none}
 .service-theme-intro{margin-top:17px;font-size:12px;line-height:1.8}
 .service-theme .panel-link{position:absolute;top:31px;right:26px;margin-top:0}
 .service-theme .panel-link>span{width:36px;height:36px}
 .service-theme .service-theme-art{right:0;top:135px;width:100%;height:325px;transform:none}
 .service-theme-controls{bottom:15px;left:30px;font-size:12px;gap:14px}
 .service-orbit.service-fusion{max-width:420px}
}
@media(max-width:360px){.property-feature-copy,.service-theme-copy{padding:24px 30px}.global-layout{padding-top:25px}.enhanced .metrics,.global-copy .metric-description{max-width:130px}.metric-value{font-size:42px}.globe-composition{right:0;width:132px;height:132px;top:165px}}
@media(prefers-reduced-motion:reduce){.service-theme .panel-link>span>svg{animation:none!important}}
@media(max-width:360px){.service-theme-heading{height:56px}.service-theme-heading>h2{max-width:145px}.service-theme h2>br{display:block}.service-theme .service-theme-art{top:157px;height:300px}}
@media(prefers-reduced-motion:reduce) and (max-width:700px){.enhanced .metrics{max-width:none;height:auto}.global-copy .metric-description{max-width:none}.globe-composition{position:relative;right:auto;top:auto;width:100%;height:240px}.global-copy>.panel-link{margin-top:24px}.metric-controls{display:none}}
