.properties{display:block}.city-collection{margin-top:55px}.city-collection>h3{font:400 clamp(34px,4vw,48px)/1.1 var(--serif);margin:0 0 28px}.city-properties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 32px}.city-properties .property.offset{padding-top:0}.swipe-hint,.mobile-gallery-track{display:none}
@media(max-width:600px){
 .collection.wrap{padding-left:0;padding-right:0}.collection>.section-head,.city-collection>h3,.swipe-hint{margin-left:6%;margin-right:6%}
 .city-collection{margin-top:40px}.city-collection>h3{font-size:36px;margin-bottom:12px}.swipe-hint{display:block;font-size:11px;color:#777568;letter-spacing:.5px;margin-bottom:20px}
 .city-properties{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:0 6% 20px;scroll-padding-inline:6%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .city-properties .property{min-width:0;scroll-snap-align:start}.city-properties .property{flex:0 0 92%}
 .city-properties .photo{height:60svh;min-height:340px;max-height:560px}.city-properties .photo img{transform:none}.city-properties .property h3{font-size:34px}.city-properties .property>p{max-width:none}
 #gallery{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;overflow-y:auto;background:#111815}
 #gallery .gallery-layout{display:block}#gallery .gallery-media{background:#111815}#gallery .gallery-media>#gallery-image{display:none}
 #gallery .close{position:fixed;top:max(12px,env(safe-area-inset-top));right:14px;background:#14201cd9;color:white;border-radius:50%;width:44px;height:44px}
 .mobile-gallery-track{display:flex;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .mobile-gallery-track::-webkit-scrollbar{display:none}.mobile-gallery-frame{flex:0 0 100%;min-width:0;height:calc(100svh - 76px);scroll-snap-align:start;scroll-snap-stop:always;display:flex;align-items:center}
 .mobile-gallery-frame img{width:100%;height:100%;object-fit:contain}.gallery-controls{height:76px;background:#111815;color:white;padding-bottom:max(12px,env(safe-area-inset-bottom))}.gallery-controls button{color:white;min-height:44px}
 #gallery .gallery-info{background:var(--paper);padding:36px 7% 50px}
 .hero h1{font-size:clamp(56px,16vw,78px)}.hero-copy{right:6%}.hero-copy .eyebrow{max-width:270px}.hero-copy{top:16%}
}
/* Destination choice uses the existing typography and gold accent. */
.collection{padding-top:80px}.city-tabs{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-top:30px}.city-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:14px 2px;font:400 26px var(--serif);color:#777568}.city-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--gold)}.city-collection{margin-top:32px}.city-collection>h3{display:none}
@media(max-width:600px){.collection{padding-top:45px}.city-tabs{margin-left:6%;margin-right:6%;gap:30px}.city-tabs button{font-size:25px}.city-collection{margin-top:24px}}

/* One row of apartments, with navigation alongside the photography. */
.city-collection{position:relative}
.city-properties{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:32px;overscroll-behavior-x:contain}
.city-properties::-webkit-scrollbar{display:none}
.city-properties .property{flex:0 0 calc((100% - 32px)/2);min-width:0;scroll-snap-align:start}
.collection-controls{position:absolute;z-index:3;top:215px;left:-76px;right:-76px;display:flex;justify-content:space-between;pointer-events:none}
.collection-controls button{width:44px;height:44px;border:1px solid var(--gold);border-radius:50%;background:var(--paper);color:var(--ink);font:25px/1 var(--serif);cursor:pointer}
.collection-controls button:hover{background:var(--ink);color:var(--paper)}
.collection-controls button:disabled{border-color:#c9c8c0;color:#b9b8b0;background:#ebeae4;cursor:default}
.collection-controls button:disabled:hover{background:#ebeae4;color:#b9b8b0}
.collection-controls button{pointer-events:auto}
.collection-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:600px){.city-properties{gap:16px;padding-bottom:0}.city-properties .property{flex-basis:92%}.swipe-hint{display:none}.collection-controls{position:static;margin:12px 6% 0 0;justify-content:flex-end;gap:10px}}

.collection-see-all{display:block;margin:20px 0 0 auto;padding:8px 0;border:0;border-bottom:1px solid var(--gold);background:none;font-size:14px}
.show-all .city-properties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:36px 32px}
.mobile-gallery-frame{border:0;padding:0;background:none;cursor:zoom-in}
.photo-fullscreen{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;background:#111815;overflow:hidden}
.fullscreen-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.fullscreen-frame{flex:0 0 100%;min-width:0;height:100%;scroll-snap-align:start}
.fullscreen-frame img{object-fit:contain;width:100%;height:100%}
.photo-fullscreen-close{position:absolute;right:16px;top:max(16px,env(safe-area-inset-top));z-index:3;background:#14201cdd;color:white;border:0;border-radius:50%;font-size:30px;width:44px;height:44px}
@keyframes gallery-slide-next{from{opacity:.45;transform:translateX(34px)}to{opacity:1;transform:translateX(0)}}
@keyframes gallery-slide-prev{from{opacity:.45;transform:translateX(-34px)}to{opacity:1;transform:translateX(0)}}
.gallery-swipe-next .gallery-layout{animation:gallery-slide-next .38s cubic-bezier(.22,.7,.2,1)}
.gallery-swipe-prev .gallery-layout{animation:gallery-slide-prev .38s cubic-bezier(.22,.7,.2,1)}
@media(max-width:600px){
 .collection-see-all{margin-right:6%}.show-all .city-properties{grid-template-columns:1fr;padding-inline:6%;gap:30px}
 #gallery{inset:0;width:94vw;height:auto;max-height:92dvh;margin:auto;background:var(--paper)}
 #gallery .close{position:absolute;top:8px;right:8px}
 .mobile-gallery-frame{height:34svh;min-height:220px;max-height:340px}
 .mobile-gallery-frame img{object-fit:cover}
 #gallery .gallery-controls{height:58px;background:var(--paper);color:var(--ink);padding:6px 14px}
 #gallery .gallery-controls button{color:var(--ink)}
 #gallery .gallery-info{padding:24px 7% 32px}
 #gallery .gallery-info h2{font-size:38px;margin-bottom:18px}
 #gallery .gallery-info .eyebrow{margin-bottom:12px}
}
