.floor-zone,.floor-zone:hover,.floor-zone:focus,.floor-zone.active{fill:transparent;stroke:none;outline:none;cursor:pointer}
#floor-highlight{fill:#d7b7a84a;stroke:#f5e2d4;stroke-width:2;pointer-events:none;transition:opacity .14s}
#floor-hint{position:absolute;right:22px;top:22px;background:#171719df;color:#fff;padding:9px 16px;font-size:13px;pointer-events:none;border-left:2px solid var(--rose)}
.floor-buttons{border:0;gap:16px;margin:18px 0 66px}.floor-buttons button{padding:12px 16px;border:0;border-bottom:1px solid #ffffff35;display:flex;justify-content:space-between;align-items:center;text-align:left}.floor-buttons button.active{background:transparent;color:var(--rose);border-bottom:2px solid var(--rose)}.floor-buttons small{font-size:12px}
.type-legend{display:flex;flex-wrap:wrap;gap:14px 34px;margin:0 0 25px}.legend-item{display:flex;align-items:center;gap:9px;font-size:13px}.legend-item strong{font-weight:400;color:var(--muted);margin-left:3px}
.type-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none;vertical-align:middle}h2 .type-dot{width:15px;height:15px;margin-right:13px}
.plan-wrap{padding:28px 12px;background:#fff;border-radius:3px;overflow:auto}.plan-wrap svg{position:static;display:block;width:100%;height:auto;min-width:680px;aspect-ratio:1309.87/559.79}
.unit-zone{fill:var(--unit-color);fill-opacity:.16;stroke:var(--unit-color);stroke-opacity:.6;stroke-width:1.1;transition:fill-opacity .18s;cursor:pointer}.unit-exterior{fill:var(--unit-color);fill-opacity:.1;stroke:var(--unit-color);stroke-width:1;stroke-dasharray:3 3;pointer-events:all}
.apartment{cursor:pointer;outline:none}.apartment:hover .unit-zone,.apartment:focus .unit-zone,.apartment.is-highlighted .unit-zone{fill:var(--unit-color);fill-opacity:.34;stroke-width:2}.unit-badge{fill:var(--unit-color);stroke:white;stroke-width:2;pointer-events:none}.unit-label{fill:#1b2021;stroke:none;font:600 18px 'Hanken Grotesk',sans-serif;pointer-events:none}.common-label{font:8px 'Hanken Grotesk',sans-serif;letter-spacing:2px;fill:#9b9b96;pointer-events:none}
.plan-note{font-size:12px;color:var(--muted);margin:12px 0 30px}.unit-list{display:block}.list-heading,.unit-row{display:grid;grid-template-columns:2fr 1fr 1.2fr 1.25fr 30px;align-items:center;gap:15px;padding:16px 20px}.list-heading{font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding-top:0;padding-bottom:11px}.unit-row{width:100%;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);text-align:left;transition:background .18s;font-size:15px}.unit-row:last-child{border-bottom:1px solid var(--line)}.unit-row:hover,.unit-row.is-highlighted{background:#ffffff06}.unit-name{display:flex;align-items:center;gap:12px}.unit-name strong{font-weight:500}.unit-name small{font-size:12px;color:var(--muted);margin-left:6px}.unit-row small{font-size:12px;color:var(--muted)}.row-price,.offer-price{color:var(--rose);font-weight:500}.row-arrow{font-size:21px;text-align:right;color:var(--rose)}.detail-plan{background:white;max-height:440px;border-radius:3px}.placeholder{border:0;border-top:1px solid var(--line);padding:20px 0;font-size:13px}.detail-plan .unit-zone{cursor:default}
@media(max-width:800px){.floor-buttons{gap:8px}.floor-buttons button{display:block;padding:9px}.floor-buttons small{margin-top:3px}.type-legend{gap:12px 20px}.legend-item{font-size:12px}.legend-item strong{font-size:11px}.plan-wrap{padding:20px 8px}.list-heading{display:none}.unit-row{grid-template-columns:1.7fr 1fr 26px;gap:8px;padding:16px 4px}.unit-name{flex-wrap:wrap;gap:7px}.unit-name small{width:100%;padding-left:17px;margin:0}.unit-row>span:nth-child(2),.unit-row>span:nth-child(3){display:none}.row-price{text-align:right;font-size:15px}#floor-hint{top:8px;right:8px;padding:5px 8px;font-size:10px}.plan-note{margin-bottom:15px}}
.detail-plan.furnished{width:100%;height:440px;object-fit:contain;background:#faf9f6}.plan-states{display:flex;gap:10px;margin:14px 0}.plan-states button{padding:8px 12px;background:none;color:var(--muted);border:1px solid var(--line);font-size:12px}.plan-states button.active{color:var(--rose);border-color:var(--rose)}@media(max-width:800px){.detail-plan.furnished{height:300px}}
.scenic-intro{position:relative;isolation:isolate;max-width:none;min-height:680px;min-height:min(780px,82vh);display:flex;align-items:center;overflow:hidden;padding:80px max(5%,calc((100vw - 1296px)/2)) 95px}.intro-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;z-index:-2}.scenic-intro:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(19,23,23,.77) 0%,rgba(19,23,23,.45) 37%,rgba(19,23,23,.05) 75%),linear-gradient(0deg,rgba(23,23,25,.30),transparent 28%)}.intro-copy{max-width:580px}.scenic-intro h1{font-size:clamp(48px,5.4vw,78px);text-shadow:0 2px 24px #0003}.scenic-intro h1 em{color:#efd8cb}.scenic-intro .eyebrow{color:#f0d9ca}.intro-description{max-width:450px;color:#f3efeb;margin:0 0 30px;text-shadow:0 1px 12px #0004}.scenic-intro .image-caption{left:auto;right:20px}@media(max-width:800px){main>.scenic-intro{min-height:660px;padding:52px 6% 75px;align-items:flex-end}.intro-scene{object-position:54% center}.scenic-intro:after{background:linear-gradient(0deg,rgba(16,23,23,.9),rgba(16,23,23,.5) 44%,rgba(16,23,23,.04) 82%)}.intro-copy{max-width:520px}.scenic-intro h1{font-size:49px}.intro-description{font-size:15px;max-width:380px}}
textarea{width:100%;padding:10px;background:#29292c;border:1px solid #777;color:white;font:inherit;resize:vertical}.ccr-honey{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.ccr-consent{display:flex!important;gap:11px;align-items:flex-start;font-size:13px;line-height:1.5;margin-top:18px!important}.ccr-consent input{width:17px;height:17px;flex:0 0 17px;accent-color:var(--rose);margin:3px 0 0}.ccr-consent a{color:#9ec8ee;text-decoration:underline}.button:disabled{opacity:.7;cursor:default}#form-status{font-size:14px;color:var(--rose)}

/* Shared Real Estate background and photographic brand signatures. */
:root{--bg:#1f2025;--panel:#282a37;--text:#fff;--muted:#d0d3d4;--line:#d0d3d430}
html{background-color:#1f2025;background-image:url("assets/re-pattern.svg");background-position:center top;background-size:100% auto;background-repeat:repeat-y}body{background:transparent}header{background:#282a37}main>section:not(.scenic-intro){background:transparent}footer{background:transparent}.button{background:#428dff;border-color:#428dff;color:#fff}.button:hover{background:#317de9;border-color:#317de9}.text-link{color:#fff;border-color:#428dff}dialog{background:#1f2025}.gallery-shot{position:relative;margin:0;overflow:hidden}.gallery-shot>img{display:block;width:100%}.gallery-shot:after,.building:after{content:"";position:absolute;inset:auto 0 0;height:100px;background:linear-gradient(0deg,#13182370,transparent);pointer-events:none}/* Equal optical size, opposite corners; quiet signatures on smaller images. */
.photo-brands{position:absolute;left:clamp(12px,2.2%,26px);right:clamp(12px,2.2%,26px);bottom:22px;display:flex;justify-content:space-between;align-items:center;z-index:2;pointer-events:none}
.photo-brands .photo-signature{display:block;width:clamp(76px,13%,128px)!important;height:auto!important;aspect-ratio:1262/330;object-fit:contain;opacity:.94;filter:drop-shadow(0 1px 2px #0004)}
.gallery-shot .photo-brands{left:12px;right:12px;bottom:12px}
.gallery-shot .photo-signature{width:clamp(68px,23%,90px)!important;opacity:.9}
.scenic-intro{padding-bottom:115px}.scenic-intro .photo-brands{bottom:25px}
.building .photo-brands{bottom:18px}
.scenic-intro .button{background:var(--rose);border-color:var(--rose);color:#211b18}
.scenic-intro .button:hover{background:#e6c9bb;border-color:#e6c9bb}
@media(max-width:800px){
 .photo-brands{bottom:16px}.scenic-intro .photo-brands{bottom:22px}
 .scenic-intro .photo-signature{width:102px!important}
 main>.scenic-intro{padding-bottom:110px}
 .gallery-shot:after,.building:after{height:65px}
 .building .photo-brands{bottom:12px}
}

/* Reviewed interior galleries: photographs first, the matching plan one tap away. */
#detail .detail-grid{grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr);gap:30px}
#unit-media{min-width:0}#unit-media [hidden]{display:none!important}
.media-tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin:0 0 20px}
.media-tabs button{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);padding:0 0 10px;font-size:14px}
.media-tabs button[aria-selected="true"]{color:var(--rose);border-bottom-color:var(--rose)}
.gallery-main{position:relative;display:block;width:100%;padding:0;border:0;background:#d9d1c5;overflow:hidden;cursor:zoom-in}
.gallery-image{display:block;width:100%;height:auto;aspect-ratio:1586/992;object-fit:contain}
.gallery-enlarge{position:absolute;right:10px;bottom:10px;background:#1f2025dc;color:#fff;font-size:11px;line-height:1.2;padding:7px 9px;letter-spacing:.02em}
.gallery-caption{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:12px 0 15px;font-size:13px;line-height:1.4}
.gallery-counter{flex:none;color:var(--muted);font-variant-numeric:tabular-nums}
.gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:3px 2px 10px;scrollbar-width:thin;scrollbar-color:var(--rose) transparent}
.gallery-thumbs button{flex:0 0 calc((100% - 30px)/4);min-width:80px;text-align:left;padding:0;border:0;background:none;color:var(--muted)}
.gallery-thumbs img{display:block;width:100%;aspect-ratio:1.6;object-fit:cover;border:2px solid transparent;padding:2px;transition:border-color .15s}
.gallery-thumbs button[aria-pressed="true"] img{border-color:var(--rose)}
.gallery-thumbs button[aria-pressed="true"]{color:var(--rose)}
.gallery-thumbs span{display:block;margin-top:6px;font-size:11px;line-height:1.3}
.gallery-note{font-size:12px;line-height:1.6;color:var(--muted);margin:13px 0 0;max-width:66ch}
.unit-tour{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;margin-top:19px}
.unit-tour button{border:1px solid #d0d3d44f;background:transparent;color:var(--muted);padding:9px 13px;font-size:12px;cursor:default}
.unit-tour button>span{font-size:18px;margin-right:7px;vertical-align:-1px}
.unit-tour>span{font-size:11px;letter-spacing:.04em;color:#a6aaae}
.unit-summary .metrics{margin-top:0}.unit-summary .button{width:100%}
#gallery-lightbox{position:fixed;inset:0;width:min(1400px,97vw);max-width:97vw;max-height:96vh;padding:42px 44px 22px;border:1px solid var(--line);overflow:auto;background:#1f2025}
#gallery-lightbox::backdrop{background:#101116ed;backdrop-filter:blur(6px)}
#gallery-lightbox figure{margin:0}
#gallery-lightbox img{display:block;width:100%;height:auto;max-height:calc(96vh - 110px);object-fit:contain}
#gallery-lightbox figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:12px;font-size:13px;color:var(--muted)}
.viewer-close,.viewer-prev,.viewer-next{position:absolute;border:0;background:#1f2025e6;color:#fff;padding:0;display:grid;place-items:center;width:38px;height:38px;line-height:1}
.viewer-close{top:3px;right:4px;font-size:28px}.viewer-prev,.viewer-next{top:calc(50% - 19px);font-size:24px;border:1px solid var(--line)}.viewer-prev{left:3px}.viewer-next{right:3px}
@media(max-width:800px){
 #detail .detail-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 #detail{padding:38px 18px 24px}#detail h2{font-size:29px}
 .media-tabs{margin-bottom:15px}.gallery-thumbs{gap:6px}
 .gallery-thumbs button{flex-basis:calc((100% - 18px)/4);min-width:65px}
 #gallery-lightbox{padding:40px 8px 17px;width:98vw;max-width:98vw}
 #gallery-lightbox figcaption{padding:0 6px;font-size:12px}
 .viewer-prev,.viewer-next{width:34px;height:38px;top:calc(50% - 8px)}
}

.plan-states{flex-wrap:wrap}

/* Storage is shown separately from living and exterior areas. */
.unit-summary .metric-total{grid-column:1/-1}.metric-total small{display:block;color:var(--muted);font-size:12px;margin-top:8px;line-height:1.5}
.unit-name .mobile-total{display:none}
@media(min-width:801px){
 .list-heading,.unit-row{grid-template-columns:minmax(165px,1.75fr) .85fr 1fr .75fr 1fr minmax(115px,1.1fr) 20px;gap:12px;padding-left:12px;padding-right:12px}
 .unit-name{gap:7px;flex-wrap:wrap}.unit-name small{margin-left:0}
 .list-heading{font-size:10px;letter-spacing:.04em}
}
@media(max-width:1000px) and (min-width:801px){
 .list-heading,.unit-row{grid-template-columns:minmax(125px,1.4fr) .9fr 1fr .8fr 1fr minmax(95px,1.1fr) 16px;gap:7px;padding-left:5px;padding-right:5px;font-size:13px}
 .list-heading{font-size:9px}.unit-name small{width:100%;padding-left:17px}
}
@media(max-width:800px){
 .unit-row>.row-area{display:none}.unit-name .mobile-total{display:block;font-size:11px;margin-top:2px}
}
.offer table{min-width:1000px}.offer th,.offer td{white-space:nowrap}
.offer-benefits{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:28px 0 34px;padding-top:23px;border-top:1px solid var(--line)}
.offer-benefits h3{font-size:23px;line-height:1.35;margin:0 0 10px;color:var(--text)}
.offer-benefits p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:56ch}
@media(max-width:640px){.offer-benefits{grid-template-columns:1fr;gap:22px;margin:24px 0 28px}.offer-benefits h3{font-size:22px}}

.offer-intro{max-width:78ch;font-size:16px;line-height:1.75;color:var(--muted);margin:18px 0 26px}
