/* Shared navigation and final readability corrections. */
.residences .calculator input:not([type=range]):not([type=checkbox]),.residences .filter-input{padding:14px 18px;box-sizing:border-box;min-width:0;width:100%}
.residences.city :is(h1,h2,h3,.page-heading){letter-spacing:-.025em}
.residences.city .contact-band h2,.residences.city .lead-band h2{letter-spacing:-.02em;line-height:1.14}
.residences.atelier .amenity,.residences.motion .amenity{color:#24352b}
.residences.atelier .amenity :is(b,h3,p),.residences.motion .amenity :is(b,h3,p){color:#24352b}
.residences.atelier .btn:not(.outline),.residences.motion .btn:not(.outline){background:#f1dfcf;color:#29352f;border-color:#f1dfcf}
.residences.atelier .btn:not(.outline):hover,.residences.motion .btn:not(.outline):hover{background:#fff0e2;border-color:#fff0e2;color:#1b2921}
.residences.atelier .lead-band,.residences.motion .lead-band{background:#eee1d3;color:#26342e;border-color:#cbb9a8}
.residences.atelier .lead-band :is(h2,p,.eyebrow,.mini-label,.consent,label,.form-extras summary,.consent a),.residences.motion .lead-band :is(h2,p,.eyebrow,.mini-label,.consent,label,.form-extras summary,.consent a){color:#26342e}
.residences.atelier .lead-band .btn,.residences.motion .lead-band .btn{background:#263b32;color:#fff;border-color:#263b32}
.residences.orbit .lead-band h2{color:#fff}
.residences.motion .motion-hero{isolation:isolate}
.residences.motion .motion-hero>img{z-index:0;filter:saturate(.9)}
.residences.motion .motion-hero:after{display:none}
.motion-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(8,17,19,.86),rgba(8,17,19,.35)),linear-gradient(0deg,rgba(8,17,19,.55),transparent 70%);transform:translateZ(0)}
.residences.motion .motion-hero .hero-content{z-index:2}
.orbit .portal-tag{bottom:24%;right:3%}
.menu-toggle{display:none}
.mobile-menu{background:#f8f8f2;color:#24362d;border:0;position:fixed;inset:0 0 0 auto;margin:0;padding:24px;width:min(440px,100%);max-width:100%;height:100dvh;max-height:100dvh;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;box-shadow:-20px 0 80px #0003;font-family:var(--sans)}
.mobile-menu::backdrop{background:#101c24a6;backdrop-filter:blur(6px)}
.mobile-menu[open]{display:flex;flex-direction:column;gap:28px}
.mobile-menu-top{display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:600}
.mobile-menu-close,.menu-toggle{color:inherit;border:1px solid currentColor;background:transparent;cursor:pointer;min-width:48px;min-height:48px;border-radius:50%;align-items:center;justify-content:center}
.mobile-menu-close{font:28px/1 Arial}
.mobile-menu nav{display:grid;gap:0}
.mobile-menu nav a{color:#24362d;text-decoration:none;padding:20px 0;border-bottom:1px solid #ccd4ca;font-size:22px;line-height:1.3}
.mobile-menu nav a[aria-current=page]{font-weight:700}
.mobile-menu .menu-contact{display:grid;gap:18px}
.residences .mobile-menu .btn{background:#263b32;color:white;border-color:#263b32;justify-content:center;font-size:15px}
.mobile-menu .menu-phone{color:#263b32;font-size:19px}
.menu-variants{margin-top:auto;display:flex;flex-wrap:wrap;gap:10px;padding-top:20px}
.menu-variants>span{flex-basis:100%;font-size:12px;color:#526157}
.menu-variants a{padding:12px;color:#34493c;border:1px solid #bdc9ba;border-radius:8px;font-size:12px}
.menu-variants a.active{background:#263b32;color:#fff}
.menu-open .motion-toggle,.menu-open .orbit-effect-toggle{visibility:hidden}
@media(max-width:1100px){
 .residences .header{display:flex;flex-wrap:nowrap;height:auto;min-height:80px;padding-block:16px;gap:16px}
 .residences .header .logo{margin-right:auto}
 .residences .header .nav,.residences .header .header-contact{display:none}
 .residences .header>.menu-toggle{display:flex;flex:none}
 .residences .design-switch{justify-content:space-between;padding-block:10px;min-height:34px}
 .residences .design-switch>a{display:none}
 .residences .design-switch>span{margin:0}
}
@media(max-width:760px){
 .orbit .orbit-round-link{width:52px;height:52px;min-width:52px;justify-content:center}
 .orbit .orbit-round-link>span{display:none}
 .orbit .orbit-round-link>b{font-size:26px}
 .orbit .portal-tag{bottom:20%;right:0;max-width:90%;line-height:1.5}
 .residences .header{min-height:76px}
 .residences .mobile-menu{padding:20px}
}
@media(prefers-reduced-motion:no-preference){.mobile-menu[open]{animation:menu-arrive .24s ease-out}@keyframes menu-arrive{from{opacity:0;transform:translateX(30px)}to{opacity:1}}}
.residences.orbit .orbit-hero-bottom>.btn:hover,.residences.orbit .orbit-location .btn:hover,.residences.orbit .lead-band .btn:hover{background:#edf5d4;color:#223326;border-color:#edf5d4}
.residences.orbit .btn.outline:hover,.residences.orbit .btn.light:hover{background:#e3ebd5;color:#233c2e}
@media(prefers-reduced-motion:no-preference){.residences.motion .news-card>img,.residences.motion .feature-card img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s ease}}
.residences .mobile-menu button{position:static;inset:auto;flex-shrink:0}
.residences .mobile-menu .mobile-menu-close{background:transparent;color:#24362d;border:1px solid #bbc6b9;font-size:28px;display:flex;padding:0;line-height:1}

/* Keep the hero CTA and its divider in normal flow; one owner per transform. */
.residences.motion .motion-hero{height:auto;min-height:740px}
.residences.motion .motion-hero .hero-content{height:auto;min-height:740px;padding-block:36px;box-sizing:border-box}
.residences.motion .motion-hero .hero-bottom{margin-top:28px}
.residences.motion .motion-hero .hero-meta{position:static;margin-top:28px;width:100%;max-width:880px}
.residences.motion .motion-hero .btn{transition:background-color .25s,color .25s,border-color .25s}
@media(max-width:760px){.residences.motion .motion-hero,.residences.motion .motion-hero .hero-content{min-height:690px}.residences.motion .motion-hero .hero-content{padding-block:30px}.residences.motion .motion-hero .hero-meta{margin-top:28px;max-width:none}}

/* Client preview QA: readable controls, touch targets and safe form results. */
.residences.air .btn:not(.outline):not(.light),.residences.air .city-hero .btn.light{background:#326d83;border-color:#326d83;color:#fff}
.residences.glass .calculator .eyebrow{color:#435e82}
.residences .lead-ready{color:#24352b;overflow-wrap:anywhere}
.residences .lead-ready :is(h3,p,.mini-label,.edit-request){color:#24352b}
.residences .lead-ready .btn,.residences .lead-ready .btn:hover{background:#263b32;border-color:#263b32;color:#fff}
.residences .card-action button,.residences .edit-request,.residences .print-link,.residences .zoom-btn,.residences .visual-tabs button{min-height:44px}
.residences .mobile-menu{padding-bottom:max(24px,env(safe-area-inset-bottom))}
.residences .mobile-menu .btn:hover{background:#354f42;color:#fff}
.residences .form-error{color:#a12f26;background:#fff4ef;padding:12px 14px;border-radius:6px}
.residences .lead-ready[tabindex]:focus-visible{outline:2px solid #326d83;outline-offset:4px}
@media(max-width:760px){.orbit .orbit-coordinate{position:static;margin-top:24px}.residences .visual-toolbar{flex-wrap:wrap;gap:10px}.residences .lead-ready{padding:18px}}
@media(prefers-reduced-motion:reduce){.residences *, .residences *::before,.residences *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.residences.atelier .lead-band .choice:has(input:checked),.residences.motion .lead-band .choice:has(input:checked){color:#fff}

/* Spacious architecture scene; no pinned spacer between editorial sections. */
.residences.motion .feature-image{width:calc(100% - 64px);max-width:1760px;height:clamp(560px,48vw,820px);margin:72px auto;position:relative;isolation:isolate}
.residences.motion .feature-image:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(8,17,19,.78),rgba(8,17,19,.08) 80%)}
.residences.motion .feature-image .feature-overlay{z-index:2;max-width:740px;padding:clamp(32px,5vw,88px);width:100%;box-sizing:border-box}
.residences.motion .feature-image h2{font-size:clamp(44px,4.5vw,76px);line-height:1.08;max-width:620px}
.residences.motion .feature-image p{max-width:500px;font-size:17px;line-height:1.65}
.motion .motion-ribbon-track>span,.orbit .orbit-marquee>div>span{min-width:100vw;box-sizing:border-box;flex:0 0 auto}
.orbit .orbit-marquee>div{display:flex;width:max-content;will-change:transform}
.orbit .orbit-marquee>div>span{display:block;padding-inline:24px}
@media(max-width:760px){.residences.motion .feature-image{width:calc(100% - 32px);height:600px;margin:40px auto}.residences.motion .feature-image .feature-overlay{padding:28px}.residences.motion .feature-image h2{font-size:40px}.residences.motion .feature-image p{font-size:15px}}

/* Review refinements and live RPT interactive. */
.residences.motion .intro .stats{padding-block:28px}
.residences.motion .article-layout p{color:#c5d0cb}
.residences #reset-filters{white-space:nowrap;flex-shrink:0;min-width:100px}
.orbit .orbit-round-link{justify-content:center;gap:0}
.orbit .orbit-round-link b{margin:0;font-size:48px}
.motion .motion-ribbon-track>span,.orbit .orbit-marquee>div>span{min-width:0;white-space:pre}
.residences .rpt-interactive-shell{overflow:hidden;position:relative;border-radius:inherit;background:#e7ebe5;color:#20382d}
.residences #interactive{width:100%;min-height:180px;position:relative}
.residences #interactive img{border-radius:0;box-shadow:none}
.residences .interactive-catalog-link{display:block;padding:18px 24px;background:#e7ebe5;color:#20382d;font-size:14px;text-align:center}
.residences .interactive-catalog-link:hover{background:#d6e2d0}
.residences.air .rpt-interactive-shell,.residences.glass .rpt-interactive-shell{border-radius:32px}
.orbit .orbit-location{display:block;min-height:0;padding:72px 0}
.orbit .orbit-location:after{display:none}
@media(max-width:760px){.residences .interactive-catalog-link{padding:16px;font-size:12px}.orbit .orbit-location{padding:40px 0}}

.residences .building-filter{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:18px 0}.building-filter>span{margin-right:8px}.residences .building-filter .chip{min-width:54px;min-height:44px}.interactive-message{padding:16px;margin:0;color:#20382d;background:#e7ebe5}

/* ATELIER controls: warm surfaces with readable white labels. */
.residences.atelier .btn.btn,
.residences.atelier .card-action .btn.outline,
.residences.atelier .unit-purchase .btn,
.residences.atelier .finance-tabs button.active,
.residences.atelier .chip.active{background:#86543e;border-color:#86543e;color:#fff}
.residences.atelier .btn.btn:hover,
.residences.atelier .card-action .btn.outline:hover,
.residences.atelier .unit-purchase .btn:hover,
.residences.atelier .finance-tabs button.active:hover,
.residences.atelier .chip.active:hover{background:#704330;border-color:#704330;color:#fff}
.residences.air .amenities{gap:24px}
.residences.air .amenity{border-radius:32px;overflow:hidden;padding:36px;box-shadow:0 16px 40px rgba(47,92,111,.08);border:1px solid rgba(255,255,255,.85);background:#eaf3f6;color:#243e49}
.residences.air .amenity:nth-child(2){background:#f1f5fa}
.residences.air .amenity:nth-child(3){background:#e3f0f4}
.residences.air .amenity :is(b,h3){color:#243e49}
.residences.air .amenity p{color:#465e6a}
@media(max-width:760px){.residences.air .amenities{gap:16px}.residences.air .amenity{border-radius:24px;padding:28px}}

/* One filter panel, with shared controls and theme-specific tokens. */
.residences{--filter-bg:#fff;--filter-text:#1b3430;--filter-active:#637857;--filter-on-active:#fff;--filter-radius:8px;--filter-panel-radius:20px;--filter-border:#dce3dc}
.residences.city{--filter-active:#3158bf;--filter-radius:4px;--filter-panel-radius:12px}
.residences.atelier{--filter-active:#86543e;--filter-radius:0px;--filter-panel-radius:0px;--filter-bg:#f7f5ee}
.residences.air{--filter-active:#326d83;--filter-radius:16px;--filter-panel-radius:28px;--filter-border:#dce9eb}
.residences.glass{--filter-active:#326eea;--filter-radius:14px;--filter-panel-radius:26px}
.residences.motion{--filter-bg:#1c2729;--filter-text:#edf1e9;--filter-active:#efaa86;--filter-on-active:#17211d;--filter-radius:0px;--filter-panel-radius:0px;--filter-border:#52615e}
.residences.orbit{--filter-bg:#fffef5;--filter-active:#304d35;--filter-radius:999px;--filter-panel-radius:28px}
.residences .catalog-filters{background:var(--filter-bg);color:var(--filter-text);border:1px solid var(--filter-border);border-radius:var(--filter-panel-radius);padding:24px;margin-bottom:28px}
.residences .catalog-filters .filters{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;margin:0;gap:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}
.residences .catalog-filters .building-filter{padding:0 0 18px;gap:10px}
.residences .catalog-filters .building-filter>span{display:none}
.residences .catalog-filters .rooms{display:flex;flex-wrap:wrap;gap:10px}
.residences .catalog-filters .filters+.filters{border-top:1px solid var(--filter-border);padding-top:18px;margin-top:18px}
.residences .catalog-filters :is([data-building],[data-rooms],[id="reset-filters"]){appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:54px;min-height:44px;padding:11px 18px;border:1px solid var(--filter-border);border-radius:var(--filter-radius)!important;background:transparent;color:var(--filter-text);font:600 13px/1.4 var(--sans);box-shadow:none;margin:0;white-space:nowrap;transition:background-color .2s,color .2s,border-color .2s}
.residences .catalog-filters :is([data-building],[data-rooms])[aria-pressed=true]{background:var(--filter-active);border-color:var(--filter-active);color:var(--filter-on-active)}
.residences .catalog-filters :is([data-building],[data-rooms],[id="reset-filters"]):hover{border-color:var(--filter-active)}
.residences .catalog-filters .sort-picker summary{background:transparent;color:var(--filter-text);border-color:var(--filter-border);border-radius:var(--filter-radius);min-height:44px}
@media(max-width:760px){.residences .catalog-filters{padding:18px}.residences .catalog-filters .filter-tools{flex-wrap:wrap;gap:10px}.residences .catalog-filters .sort-picker{width:100%}.residences .catalog-filters .filters>.filter-tools{width:100%}.residences .catalog-filters .filter-input{flex:1 1 140px;min-width:0}}

/* Native cross-document transitions; ordinary navigation remains the fallback. */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:no-preference){
 ::view-transition-old(root){animation:page-out .36s ease-in-out both;mix-blend-mode:normal}
 ::view-transition-new(root){animation:page-in .36s ease-in-out both;mix-blend-mode:normal}
 @keyframes page-out{to{opacity:0}}
 @keyframes page-in{from{opacity:0}to{opacity:1}}
}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-old(root),::view-transition-new(root){animation:none}}

.residences :is(.close-drawer,.mobile-menu-close){display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;line-height:1;outline:none!important}.residences :is(.close-drawer,.mobile-menu-close) svg{display:block;flex:none}.residences :is(.close-drawer,.mobile-menu-close):focus-visible{box-shadow:inset 0 0 0 2px currentColor}

/* Shared dialog motion: preserve native focus, Escape and top-layer behavior. */
@media(prefers-reduced-motion:no-preference){
 .residences dialog[open]{animation:dialog-arrive .3s cubic-bezier(.22,1,.36,1) both}
 .residences dialog:is(.lead-drawer,.mobile-menu)[open]{animation:drawer-arrive .38s cubic-bezier(.22,1,.36,1) both}
 .residences dialog[open]::backdrop{animation:backdrop-arrive .3s ease both}
 @keyframes dialog-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
 @keyframes drawer-arrive{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}
 @keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}
 @supports (transition-behavior:allow-discrete){
  .residences dialog{opacity:0;transform:translateY(16px);transition:opacity .3s ease,transform .38s cubic-bezier(.22,1,.36,1),display .38s allow-discrete,overlay .38s allow-discrete}
  .residences dialog:is(.lead-drawer,.mobile-menu){transform:translateX(100%)}
  .residences dialog[open]{opacity:1;transform:none;animation:none}
  .residences dialog:is(.lead-drawer,.mobile-menu)[open]{animation:none}
  .residences dialog::backdrop{opacity:0;transition:opacity .3s ease,display .38s allow-discrete,overlay .38s allow-discrete}
  .residences dialog[open]::backdrop{opacity:1;animation:none}
  @starting-style{
   .residences dialog[open]{opacity:0;transform:translateY(16px)}
   .residences dialog:is(.lead-drawer,.mobile-menu)[open]{opacity:0;transform:translateX(100%)}
   .residences dialog[open]::backdrop{opacity:0}
  }
 }
}

/* The Atelier drawer is light even though the page uses light ink. */
.residences.atelier .lead-drawer .close-drawer{color:#28332d;background:#f5f2eb;border-color:#899188}
.residences.atelier .lead-drawer .close-drawer:hover{color:#fff;background:#28332d;border-color:#28332d}
