/* One photographic collection, with a restrained mobile layout. */
.mobile-label{display:none}
.hero-city{font-size:12px;color:#e0e0e0;margin-top:10px;letter-spacing:.02em}
.hero-slides{touch-action:pan-y pinch-zoom}
.hero-swipe-hint{display:none}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 32px}
.project-card{min-width:0}
.project-card>a{display:block}
.project-image{aspect-ratio:3/2;background:#f4f3f1;overflow:hidden}
.project-image img{object-position:center}
.project-caption{padding:18px 0 20px;background:#fff}
.project-caption h3{font-size:23px;font-weight:400;letter-spacing:-.015em;line-height:1.3}
.project-card p.project-city{font-size:13px;color:#737373;margin:8px 0 0;line-height:1.5}
.project-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
.project-preview{display:block;aspect-ratio:3/2;overflow:hidden;background:#f4f3f1;border-radius:12px 0 12px 0}
.project-preview img{width:100%;height:100%;object-fit:cover}
.project-open{display:inline-flex;align-items:center;gap:16px;min-height:44px;margin-top:8px;padding:8px 0;border-bottom:1px solid #999;color:#333;font-size:14px;line-height:1.4}
.project-open-arrow{display:inline-block;transition:translate .2s ease}
.project-card>a:hover .project-open,.project-card>a:focus-visible .project-open,.home-selection-card>a:hover .project-open,.home-selection-card>a:focus-visible .project-open{border-color:#333}
.project-card>a:hover .project-open-arrow,.home-selection-card>a:hover .project-open-arrow{translate:4px}
html[dir=rtl] .project-open-arrow{rotate:180deg}
html[dir=rtl] .project-card>a:hover .project-open-arrow,html[dir=rtl] .home-selection-card>a:hover .project-open-arrow{translate:-4px}
.project-guide{max-width:650px;margin:0 0 24px;color:#606060;font-size:14px;line-height:1.7}
.home-selection>.project-guide{margin:-10px 0 24px}
.turnkey-projects{padding-top:8px;border-top:0}
.turnkey-projects .section-heading{align-items:flex-end}
.turnkey-projects .section-heading .project-guide{margin:12px 0 0}
.turnkey-projects .section-heading>.text-link{flex-shrink:0}
.turnkey-service-link{margin-top:20px}
.apartment-list{padding-top:12px}
.project-back{display:flex;align-items:center;min-height:56px;width:fit-content;margin:8px var(--space);font-size:14px}
.project-lead{width:100%;aspect-ratio:16/9;max-height:850px;overflow:hidden;background:#f2f1ef}
.project-lead img{object-position:center}
.project-detail-heading{max-width:820px;margin:auto;padding:44px 24px 48px;text-align:center}
.project-scope{font-size:12px;letter-spacing:.09em;color:#737373;margin-bottom:15px}
.project-detail-heading h1{font-size:clamp(29px,3.3vw,46px);line-height:1.2;font-weight:400;letter-spacing:-.02em}
.project-standfirst{font-size:16px;line-height:1.85;color:#606060;margin-top:22px}
.project-place{font-size:14px;color:#737373;margin-top:22px}
.project-detail .gallery{padding-bottom:35px}
.project-detail .gallery figure:first-child{grid-column:auto}
.project-detail .gallery figure.gallery-wide{grid-column:1/-1}
.project-detail .gallery img,.project-detail .gallery figure:first-child img{aspect-ratio:auto;height:auto;object-fit:contain}
.project-detail .gallery figure>button{height:auto;display:block}
.project-service-note{max-width:800px;margin:auto;padding:35px 24px 60px;text-align:center}
.project-service-note h2{font-size:27px;letter-spacing:-.015em;margin-bottom:18px}
.project-service-note p{color:#606060;font-size:16px}
.project-related{padding:10px var(--space) 65px}
.hero-copy{bottom:44px}
.hero-controls{bottom:22px}
.home-projects .section-heading{margin-bottom:26px}
@media(max-width:1000px){
.hero-copy{bottom:89px}
.hero-controls{bottom:18px}
}
@media(max-width:760px){
.project-grid{grid-template-columns:1fr;gap:26px}
.project-previews{gap:5px;margin-top:5px}
.project-preview{border-radius:8px 0 8px 0}
.turnkey-projects{padding:0 0 40px}
.turnkey-projects .section-heading{margin:0 22px 24px;align-items:flex-start;flex-direction:column;gap:12px}
.turnkey-projects .section-heading .project-guide{margin-top:10px}
.turnkey-service-link,.apartment-list>.project-guide{margin-inline:22px}
.apartment-list>.project-guide{margin-bottom:22px}
.project-caption{padding:18px 22px 20px}
.project-caption h3{font-size:22px}
.project-image{aspect-ratio:4/3}
.project-card p.project-city{margin-top:7px}
.home-projects,.apartment-list{padding-left:0;padding-right:0}
.home-projects{padding-top:18px;padding-bottom:40px}
.home-projects .section-heading{margin:0 22px 23px;align-items:center}
.section-heading h2{font-size:25px}
.apartment-list{padding-top:0;padding-bottom:40px}
.project-back{margin:0 20px;min-height:52px;font-size:13px}
.project-lead{aspect-ratio:4/3;max-height:none}
.project-detail-heading{padding:27px 22px 34px;text-align:left}
.project-detail-heading h1{font-size:30px;max-width:340px}
.project-scope{margin-bottom:12px}
.project-standfirst{font-size:16px;line-height:1.8;margin-top:19px}
.project-place{font-size:13px;margin-top:18px}
.project-detail .gallery{padding:0 0 32px;gap:16px;grid-template-columns:1fr}
.project-detail .gallery figure{grid-column:auto}
.project-detail .gallery img{width:100%;height:auto;aspect-ratio:auto}
.project-service-note{padding:15px 22px 42px;text-align:left}
.project-service-note h2{font-size:25px}
.project-related{padding:0 0 42px}
.project-related .section-heading{padding-inline:22px;margin-bottom:22px}
.page-intro{padding:34px 22px 28px}
.page-intro h1{font-size:31px}
.page-intro>p:last-child{font-size:16px;line-height:1.8;margin-top:18px}
}
@media(max-width:650px){
.masthead{height:78px;grid-template-columns:42px minmax(0,1fr) 44px;padding-inline:18px}
.brand{min-width:0}
.brand strong{font-size:clamp(21px,6.8vw,28px);letter-spacing:.012em}
.brand small{font-size:9px;letter-spacing:.3em;margin-top:7px}
.menu-toggle{width:42px;min-height:44px}
.header-actions{gap:0}
.header-actions>a{display:flex;align-items:center;justify-content:flex-end;min-height:44px;min-width:44px;font-size:12px}
.header-actions .locale,.desktop-label{display:none}
.mobile-label{display:inline}
.nav-main{min-height:47px;padding:4px 18px;gap:16px;font-size:12px}
.nav-main a{min-height:39px;display:flex;align-items:center;justify-content:center;line-height:1.45}
.menu-drawer{padding:22px;max-height:calc(100svh - 125px);overscroll-behavior:contain}
.menu-drawer a{min-height:44px;display:flex;align-items:center;margin:0;font-size:17px}
.menu-drawer .eyebrow{font-size:11px}
.hero{height:calc(85svh - 125px);min-height:410px;max-height:640px}
.hero:after{background:linear-gradient(180deg,transparent 38%,#00000022 62%,#0000009c)}
.hero-slide img{object-position:64% center}
.hero-slide:nth-child(3) img{object-position:35% center}
.hero-copy{bottom:80px;width:calc(100% - 44px)}
.hero h1{font-size:27px;letter-spacing:.01em}
.hero-caption{font-size:16px;letter-spacing:0;margin-top:9px}
.hero-project-link{font-size:13px;margin-top:14px}
.hero-city{font-size:12px;margin-top:10px;color:#ddd}
.hero-controls{bottom:15px;gap:8px}
.hero-controls button{min-width:44px;min-height:44px}
.universe-index{gap:15px;padding:22px 18px;font-size:13px}
.universe-index>span{height:34px}
.story-photo{height:auto;aspect-ratio:4/3;min-height:0;max-height:none}
.story-caption{padding:25px 22px 29px}
.story-caption h2{font-size:25px}
.story-caption p{font-size:15px;line-height:1.75}
.editorial-story{margin-bottom:18px}
.cta{padding:32px 22px;gap:16px}
.site-footer{padding:34px 22px 24px}
.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}
.category-nav a{min-height:44px;display:flex;align-items:center}
}
@media(prefers-reduced-motion:reduce){
.hero-slide img,.project-card:hover img{transform:none}
.project-open-arrow{transition:none}
}

/* A compact, separate row of related apartments on every screen. */
.project-related .project-related-rail{display:flex;flex-wrap:nowrap;gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:2px;padding:2px 2px 16px;scrollbar-width:thin;scrollbar-color:#b9b9b9 transparent}
.project-related-rail .project-card{flex:0 0 clamp(220px,26vw,340px);scroll-snap-align:start}
.project-related-rail .project-image{aspect-ratio:3/2}
.project-related-rail .project-caption{padding:12px 0 8px}
.project-related-rail .project-caption h3{font-size:18px;line-height:1.3}
.project-related-rail .project-city{font-size:13px;margin-top:6px}
.project-related-rail:focus-visible{outline:1px solid #777;outline-offset:5px}
.project-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 32px;padding:22px 0;margin:0 0 28px;border-block:1px solid var(--line);font-size:1rem}
.project-facts div{min-width:0}.project-facts dt{font-size:.8rem;color:var(--muted);margin-bottom:7px}.project-facts dd{margin:0;line-height:1.6}
.project-study .seo-grid{margin-top:24px}.project-study .seo-actions{margin-top:26px}
@media(max-width:760px){
.project-facts{grid-template-columns:1fr;gap:16px}.project-facts div{display:grid;grid-template-columns:90px 1fr;gap:16px}.project-facts dt{margin:0}
.project-related .project-related-rail{gap:16px;padding-inline:22px;scroll-padding-inline:22px}
.project-related-rail .project-card{flex-basis:68vw;max-width:300px}
}
