/* Floor-plan section of the Residences page, taken from the approved design. */
.kwr .res{display:flex;flex-wrap:wrap;border-top:1px solid var(--ink)}
.kwr .flist{flex:0 1 300px;padding:36px 28px 36px 48px;border-right:1px solid var(--ink);display:flex;flex-direction:column;gap:10px}
.kwr .fbtn{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--ink);background:transparent;color:var(--ink);text-align:left;min-height:56px;transition:all .2s}
.kwr .fbtn:hover{background:var(--lav)}
.kwr .fbtn.on{background:var(--violet);color:var(--ivory);border-color:var(--violet)}
.kwr .fbtn b{font:400 34px/1 'Bodoni Moda',serif}
.kwr .fbtn span{font-size:13px;text-align:right}
.kwr .plan{flex:1 1 560px;padding:36px 48px;min-width:0}
.kwr .legend{display:flex;gap:20px;font-size:14px;flex-wrap:wrap}
.kwr .sw{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px}
.kwr .detail{border-top:1px solid var(--ink);display:flex;flex-wrap:wrap}
.kwr .detail>div{flex:1 1 440px;padding:48px}
.kwr .detail>div:first-child{border-right:1px solid var(--ink)}
.kwr .big{font:400 76px/1 'Bodoni Moda',serif}
.kwr .sim{min-height:48px;align-items:center;display:flex;justify-content:space-between;width:100%;gap:12px;padding:16px 0;border:0;border-top:1px solid var(--ink);background:none;text-align:left;color:var(--ink)}
.kwr .sim b{font:400 28px 'Bodoni Moda',serif}
.kwr .hide{display:none!important}
@media(max-width:760px){.kwr .flist{flex:1 1 100%}.kwr .plan{padding-left:22px;padding-right:22px}.kwr .detail>div{padding:36px 22px}.kwr .detail>div:first-child{border-right:0;border-bottom:1px solid var(--ink)}.kwr .plan,.kwr .flist{padding-left:22px;padding-right:22px}.kwr .flist{border-right:0;padding-bottom:12px}.kwr .fbtn{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:8px 10px}.kwr .fbtn span{text-align:left;font-size:12px}.kwr .fbtn b{font-size:28px}.kwr .chiprow{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.kwr .chiprow .chip{position:static;transform:none;width:100%;justify-content:flex-start;font-size:14px;padding:7px 12px}.kwr .chiprow .chip b{font-size:20px}.kwr .chiprow .chip:hover{transform:none}.kwr .pbox{padding:8px}.kwr .fbtn{min-height:56px}}
.kwr .pbox{position:relative;border:1px solid var(--ink);background:var(--ivory);padding:18px;transition:background .5s,border-color .5s}
.kwr .pbox.night{background:var(--aub);border-color:var(--aub)}
.kwr .pimg{position:relative;width:100%}
.kwr .pln{position:absolute;inset:0;background:var(--ink);-webkit-mask:var(--m) center/100% 100% no-repeat;mask:var(--m) center/100% 100% no-repeat;animation:reveal 1.3s cubic-bezier(.3,.7,.2,1);transition:background .5s}
.kwr .pbox.night .pln{background:var(--ivory)}
.kwr .chip{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;min-height:44px;padding:7px 14px 7px 10px;border:1px solid var(--ink);background:var(--ivory);color:var(--ink);font:500 14px 'DM Sans',sans-serif;white-space:nowrap;box-shadow:0 6px 18px rgba(31,21,48,.18);transition:transform .2s,background .2s,color .2s}
.kwr .chip b{font:600 20px/1 'Bodoni Moda',serif}
.kwr .chip:hover{transform:translate(-50%,-56%)}
.kwr .chip.av{background:var(--violet);color:var(--ivory);border-color:var(--violet)}
.kwr .chip.lz{border-style:dashed}
.kwr .chip.sel{outline:3px solid var(--gold);outline-offset:2px;background:var(--gold2);color:var(--ink);border-color:var(--gold2)}
.kwr .chip.sel.lz{background:var(--ivory)}
.kwr .chiprow:empty{display:none}
.kwr .pin{position:absolute;transform:translate(-50%,-50%);pointer-events:none;font:600 11px/1 'Bodoni Moda',serif;padding:3px 5px;background:var(--ivory);border:1px solid var(--ink);color:var(--ink)}
.kwr .pin.av{background:var(--violet);border-color:var(--violet);color:var(--ivory)}
.kwr .pin.sel{background:var(--gold2);border-color:var(--gold2);color:var(--ink)}
.kwr .ptog{background:transparent;border:1px solid currentColor;min-height:44px;padding:8px 14px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
@media(prefers-reduced-motion:reduce){.kwr .pln{animation:none}}
@keyframes reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.kwr .plan{background:transparent;position:static}
.kwr .fbtn span{line-height:1.25}
.kwr a.kw-btn{color:var(--ivory)}
.kwr a.kw-btn:hover{color:var(--ivory)}
