/* Original wordmark plus a locally hosted geometric display face for headings. */
:root{--heading:Michroma,Lato,Arial,sans-serif;--pad:max(clamp(24px,6vw,100px),calc((100vw - 1600px)/2))}
h1,h2,h3,.intro-grid h2,.sustain-title h2,.mobility-heading h2,.zleep-copy h2,.modular-grid h2,.film-heading h2,.contact h2,.principles h3,.mobility .mobility-panel h3,.legal-title h1,.legal-copy h2,.legal-copy h3,.legal-agency h2,.cookie-banner h2,.cookie-dialog h2,.notes-dialog h2{font-family:var(--heading);font-weight:400;font-synthesis:none;text-transform:uppercase;letter-spacing:.015em;line-height:1.42;overflow-wrap:break-word;text-wrap:balance}
h2,.intro-grid h2,.sustain-title h2,.mobility-heading h2,.zleep-copy h2,.modular-grid h2,.contact h2{font-size:clamp(29px,3.2vw,52px)}
.hero h1{font-family:var(--heading);font-size:clamp(51px,6.4vw,104px);font-weight:400;letter-spacing:.025em;line-height:1.4;margin:24px 0}.hero-content{max-width:1100px;width:76%;top:30%}.hero{min-height:720px}.hero h1 em{font-style:normal}.hero-description{max-width:35ch}
.principles h3{font-size:clamp(17px,1.55vw,23px);line-height:1.5}.mobility .mobility-panel h3{font-size:clamp(20px,2vw,30px);max-width:24ch}.film-heading h2{font-size:clamp(28px,3vw,48px)}
.facade-section>div>p:last-child{font-family:var(--heading);font-size:clamp(31px,4.3vw,65px);font-weight:400;letter-spacing:.02em;text-transform:uppercase;line-height:1.45}.facade-section>div{right:var(--pad)}
.location-image figcaption>strong,.mobility .location-image figcaption>strong{font-family:var(--heading);font-weight:400;font-size:clamp(16px,1.8vw,26px);line-height:1.5;letter-spacing:.015em;text-transform:uppercase;overflow-wrap:anywhere}
.footer-brand>p{font-family:var(--heading);font-size:clamp(19px,1.8vw,29px);font-weight:400;text-transform:uppercase;letter-spacing:.02em;line-height:1.6}.site-footer>.footer-signature{display:block;margin:38px 0 0;padding-bottom:30px;font-size:0;line-height:0;max-width:none;opacity:.17}.site-footer>.footer-signature img{width:100%;height:auto;max-width:1600px;object-fit:contain;margin:0 auto}
.mobile-menu nav>a{font-family:var(--heading);font-weight:400;font-size:clamp(17px,2.8vw,29px);text-transform:uppercase;letter-spacing:.015em;line-height:1.55;gap:15px}.mobile-menu nav>a small{flex-shrink:0}
.legal-title h1{font-size:clamp(29px,4vw,56px)}.legal-copy h2,.legal-copy h3{font-size:20px;line-height:1.55}.legal-agency h2{font-size:21px}.cookie-banner h2{font-size:20px;line-height:1.5}.cookie-dialog h2,.notes-dialog h2{font-size:24px;line-height:1.5}
.intro-grid>*,.sustain-grid>*,.modular-grid>*,.mobility-heading>*,.zleep-grid>*,.contact>*,.footer-top>*,.legal-layout>*{min-width:0}.legal-copy a,.footer-contact>a{overflow-wrap:anywhere}.section-top{align-items:start}.section-top .eyebrow{max-width:65%}
.footer-links nav>a,.footer-legal a,.footer-legal button{min-height:32px;display:inline-flex;align-items:center}.inline-controls button,.cookie-action,.film-quality select,.video-toggle{min-height:44px}.cookie-banner-actions{flex-wrap:wrap}.cookie-banner{max-height:calc(100svh - 40px);overflow:auto}.cookie-dialog{max-height:calc(100svh - 32px)}
@media(min-width:1800px){.hero-content{top:30%}.hero h1{font-size:110px}.section-pad{padding-top:115px;padding-bottom:115px}.zleep-images{min-height:700px}.modular-grid figure img{height:640px}}
@media(min-width:761px) and (max-width:1000px){
 .site-header,.site-header.is-scrolled{height:100px;padding:0 32px}.masthead,.is-scrolled .masthead{height:100px}.brand,.is-scrolled .brand{width:145px}.header-place{font-size:8px}.header-place small{font-size:6px}.header-contact,.desktop-nav{display:none}.menu-toggle{position:absolute;right:0;top:28px;min-width:75px;height:44px;display:flex;align-items:center;gap:12px;padding:6px}.is-scrolled .menu-toggle{top:28px}.menu-toggle small{font-size:8px;letter-spacing:.1em;color:var(--gold)}.menu-toggle .menu-reeds{display:flex;align-items:center;gap:5px;width:24px;height:28px;background:none;transform:skewX(-27deg);margin:0}.menu-reeds i{display:block;width:2px;height:26px;background:var(--gold)}.menu-reeds i:nth-child(2){height:21px}.menu-reeds i:nth-child(3){height:16px}section[id]{scroll-margin-top:100px}
 .hero{min-height:740px}.hero-content{top:26%;width:84%}.hero h1{font-size:clamp(52px,7vw,72px)}.mobile-menu nav{margin:28px auto;max-width:700px}.mobile-menu nav>a{font-size:28px;padding:17px 0}.mobile-menu>p{max-width:700px;margin:auto}
}
@media(min-width:761px) and (max-width:980px){
 .section-pad{padding-top:80px;padding-bottom:80px}.section-top{margin-bottom:42px}.intro-grid,.sustain-grid,.modular-grid,.mobility-heading,.zleep-grid,.contact{grid-template-columns:1fr;gap:36px}.intro-grid{grid-template-columns:1fr 1fr;gap:36px}.intro-grid h2{font-size:30px}.intro-grid .intro-copy .lead{font-size:21px}.intro-grid .intro-copy>p:not(.lead){font-size:14px}.intro-signature{margin-top:24px}
 .sustain-title>p:not(.lead){max-width:65ch}.sustain-title>.lead{margin-top:24px}.principles{max-width:none}.modular-grid figure{max-width:720px;width:100%}.modular-grid figure img{height:460px}.modular-grid>div{max-width:70ch}.mobility-heading{grid-template-columns:1fr 1fr;gap:35px}.mobility-heading h2{font-size:30px}.mobility-heading .lead{font-size:20px}.mobility .location-image{height:480px}.mobility .location-image figcaption{padding-left:28px;padding-right:28px}.mobility .location-image figcaption>strong{font-size:17px}.mobility .mobility-explorer{padding:0 28px 32px}.mobility-explorer [role=tab]{padding:20px}.mobility-explorer [role=tab] span{font-size:14px}.mobility .mobility-panel{gap:35px;min-height:220px}.mobility .mobility-panel h3{font-size:22px}
 .zleep-grid{grid-template-columns:1fr 1fr;gap:35px}.zleep-copy h2{font-size:30px}.zleep-images{min-height:570px}.zleep-room{height:300px}.zleep-lounge{height:280px;width:90%;left:-12px}.zleep-copy .lead{font-size:20px}.zleep-copy p:not(.lead){font-size:14px}.contact{grid-template-columns:1fr 1fr;gap:35px}.contact h2{font-size:28px}.contact-email{font-size:18px}.footer-top{grid-template-columns:1fr 1fr 1fr}.site-footer>.footer-top{gap:30px}.footer-brand>p{font-size:17px}.site-footer .footer-brand img{width:150px}.footer-contact>a{font-size:11px}.footer-contact>p:not(.footer-label){font-size:11px}.legal-layout{gap:35px}.legal-agency{padding:25px}.legal-agency h2{font-size:18px}
}
@media(max-width:760px){
 :root{--pad:24px}.section-pad{padding:65px 24px}.section-top{gap:18px;margin-bottom:34px}.section-top .eyebrow{max-width:62%;font-size:8px}.section-number{font-size:7px;white-space:normal;max-width:38%;line-height:1.6}
 h2,.intro-grid h2,.sustain-title h2,.mobility-heading h2,.zleep-copy h2,.modular-grid h2,.contact h2{font-size:clamp(24px,6.7vw,38px);line-height:1.5;letter-spacing:0}
 .hero{height:100svh;min-height:740px;max-height:980px}.hero-content{top:clamp(170px,25svh,240px);width:calc(100% - 48px);max-width:none}.hero h1{font-size:clamp(31px,8.3vw,55px);line-height:1.5;letter-spacing:.015em;margin:22px 0}.hero-description{font-size:16px;line-height:1.7}.hero .text-link{margin-top:22px}.hero .eyebrow{font-size:8px;letter-spacing:.16em}.hero-film-controls{bottom:135px}.hero-bottom{bottom:40px;font-size:8px;line-height:1.5}.render-note{font-size:7px}
 .intro-grid{gap:30px}.intro-grid .intro-copy .lead{font-size:21px;line-height:1.55}.intro-signature{margin-top:20px}.intro>.caption{font-size:10px}.intro .facts .fact-label{font-size:10px}.intro .facts .fact-kicker{font-size:7px;letter-spacing:.06em}
 .sustain-title>.lead{margin-top:24px;font-size:20px}.sustain-title>p:not(.lead),.principles p{font-size:14px;line-height:1.85}.principles article{gap:16px;padding:25px 0}.principles h3{font-size:17px;line-height:1.55;letter-spacing:0}.principles article>span{font-size:10px}.principles .caption{font-size:10px}
 .facade-section{height:440px}.facade-section>div{left:35px;right:35px;bottom:80px}.facade-section>div>p:last-child{font-size:clamp(24px,6.5vw,38px);line-height:1.5;letter-spacing:0}.facade-section .eyebrow{font-size:8px}.modular-grid figure img{height:clamp(280px,80vw,470px)}.modular-grid{gap:34px}.modular-grid .lead{font-size:20px}.process summary{font-size:13px;min-height:64px;gap:15px}.process details>p{font-size:13px!important;line-height:1.85;padding-left:27px;padding-right:16px}
 .mobility .location-image{height:430px}.mobility .location-image figcaption>strong{font-size:clamp(13px,3.7vw,21px);line-height:1.6;letter-spacing:0}.mobility .location-image figcaption>a{min-height:44px;display:inline-flex;align-items:center}.mobility-explorer [role=tab] span{font-size:11px;line-height:1.4}.mobility-explorer [role=tab]{min-height:110px}.mobility .mobility-panel{min-height:255px;gap:20px}.mobility .mobility-panel h3{font-size:clamp(20px,5.2vw,28px);line-height:1.55;letter-spacing:0}.mobility .mobility-panel p{font-size:14px}.connection-label{font-size:8px}.zleep-copy .lead{font-size:20px}.zleep-copy p:not(.lead){font-size:14px;line-height:1.85}.zleep-images{min-height:540px}.zleep-room{height:300px}.zleep-lounge{height:280px;width:74%;left:0}
 .film-heading{display:block}.film-heading h2{font-size:clamp(23px,6vw,34px);max-width:100%;line-height:1.5;letter-spacing:0}.film-duration{display:flex;gap:18px;align-items:center;text-align:left;margin-top:20px;font-size:8px}.film-duration br{display:none}.film-duration strong{font-size:19px}.inline-controls{flex-wrap:wrap;gap:8px;padding:12px}.inline-controls button{font-size:10px;padding:10px 12px;flex:1 1 auto;white-space:nowrap}.inline-controls button:first-child{margin-right:0}.film-meta{gap:16px}.film-quality{font-size:10px}.film-caption{font-size:10px}.film-toolbar{gap:10px;flex-wrap:wrap}.film-toolbar>.film-quality{margin-left:auto}.film-dialog video{max-height:68svh}.film-toolbar .close-button{width:44px;height:44px;flex-basis:44px}
 .contact{gap:30px}.contact-info>p{font-size:14px;line-height:1.85}.contact-email{font-size:clamp(17px,5.2vw,25px);line-height:1.5}.site-footer{padding:50px 24px 0}.site-footer>.footer-top{gap:32px 25px}.footer-brand{align-items:flex-start;gap:25px}.site-footer .footer-brand img{width:125px}.footer-brand>p{font-size:clamp(11px,3vw,17px);line-height:1.8;letter-spacing:0}.footer-label{font-size:8px;line-height:1.6;letter-spacing:.08em}.footer-links nav{gap:0}.footer-links nav>a{font-size:13px;min-height:40px}.footer-contact>a{font-size:11px}.footer-contact>p:not(.footer-label){font-size:11px}.footer-location{font-size:8px}.footer-legal{gap:4px 18px}.footer-legal a,.footer-legal button{min-height:42px}.site-footer>.footer-signature{margin:22px 0 0;padding-bottom:26px;opacity:.22}.site-footer>.footer-bottom{font-size:10px;gap:18px}
 .mobile-menu{padding:20px 24px}.mobile-menu nav{margin:20px 0}.mobile-menu nav>a{font-size:clamp(14px,4vw,24px);padding:16px 0;line-height:1.7;letter-spacing:0;min-height:60px}.menu-head{height:80px}.mobile-menu>p{font-size:9px}
 .legal-main{padding:45px 24px 60px}.legal-title h1{font-size:clamp(23px,6vw,38px);line-height:1.5;letter-spacing:0}.legal-copy h2,.legal-copy h3{font-size:18px;line-height:1.65;overflow-wrap:anywhere}.legal-copy p,.legal-copy li{font-size:14px;line-height:1.85}.legal-agency h2{font-size:19px;line-height:1.65}.legal-header nav{gap:17px}.legal-header nav a{min-height:44px;display:inline-flex;align-items:center}.legal-footer nav{gap:8px 20px}.legal-footer nav a,.legal-footer nav button{min-height:44px;display:inline-flex;align-items:center}.cookie-banner h2{font-size:18px;line-height:1.6;letter-spacing:0}.cookie-dialog h2,.notes-dialog h2{font-size:20px;line-height:1.6;letter-spacing:0}.cookie-banner p,.cookie-dialog>p{font-size:13px}.cookie-banner-actions{gap:9px}.cookie-action{font-size:11px}.cookie-banner-links a,.cookie-dialog-links a{min-height:34px;display:inline-flex;align-items:center}.cookie-category{grid-template-columns:1fr}.cookie-category>span{font-size:10px}.cookie-category p{font-size:12px}.cookie-dialog-actions{gap:18px}.cookie-reset{min-height:44px;font-size:11px}
}
@media(max-width:360px){.hero{min-height:720px}.hero-content{top:170px}.hero h1{font-size:30px}.hero .eyebrow{font-size:7px}.hero-description{font-size:15px}.intro .facts>div,.intro .facts>div+div{padding:23px 15px}.intro .facts .fact-kicker{font-size:6px}.intro .facts .fact-label{font-size:9px}.intro .facts strong{font-size:30px}.mobility-explorer [role=tab]{padding:14px 8px}.mobility-explorer [role=tab] span{font-size:9px}.mobility .mobility-panel{min-height:270px}.zleep-images{min-height:450px}.zleep-room{height:255px}.zleep-lounge{height:240px}.footer-brand{gap:18px}.site-footer .footer-brand img{width:110px}.footer-brand>p{font-size:11px}.footer-label{font-size:7px}.footer-contact>a{font-size:10px}.contact-email{font-size:17px}.cookie-banner{padding:19px}.cookie-banner h2{font-size:16px}.cookie-action{font-size:10px;padding:11px 12px}.cookie-dialog h2{font-size:18px}.cookie-dialog{padding:28px 20px}.legal-title h1{font-size:22px}}
@media(max-height:550px) and (orientation:landscape){.mobile-menu .menu-head{height:65px}.mobile-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin:15px 0}.mobile-menu nav>a{font-size:15px;padding:10px 0;min-height:44px}.mobile-menu>p{font-size:8px}.cookie-banner{bottom:16px;right:16px;max-height:calc(100svh - 32px)}.film-dialog{max-height:96svh}.film-dialog video{max-height:65svh}.legal-agency{position:relative;top:auto}}
/* Keep long dialog titles and address lines intact at phone widths. */
@media(max-width:760px){.cookie-dialog h2{font-size:clamp(14px,4.4vw,20px);margin-right:0;overflow-wrap:normal}.contact-info>p br{display:initial}}
.mobile-menu nav>a:nth-child(7){--item:6}
