/* Dedicated apartment pages. The finder remains a building / floor / list overview. */
.apartment-page{padding:120px var(--gutter) 90px;max-width:1800px;margin:auto}
.apartment-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted)}
.apartment-breadcrumb a:hover,.apartment-back:hover{color:var(--olive)}
.apartment-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:40px 0 34px}
.apartment-heading .eyebrow{font-size:10px;margin-bottom:15px;color:var(--olive)}
.apartment-heading h1{font-size:clamp(36px,4.4vw,72px);line-height:1.08;letter-spacing:-.055em}
.apartment-number{font-size:.62em;color:var(--olive);display:inline-block;margin-left:24px;letter-spacing:-.025em}
.apartment-number em{font-style:normal}
.apartment-back{display:flex;align-items:center;gap:14px;font-size:13px;padding-bottom:8px;white-space:nowrap}
.apartment-back>span{font-size:24px}
.apartment-overview{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(350px,1fr);gap:4vw;align-items:start;border-top:1px solid var(--line);padding-top:30px}
.apartment-plan{min-width:0;background:var(--white);position:sticky;top:90px;padding:22px 24px}
.apartment-plan-bar,.apartment-plan-foot{display:flex;align-items:center;justify-content:space-between;gap:18px}
.apartment-plan-bar p{font-size:10px;letter-spacing:.1em}.apartment-plan-bar p span{color:var(--muted);margin-left:18px}
.apartment-enlarge{display:flex;align-items:center;gap:20px;font-size:12px;min-height:40px}.apartment-enlarge>span{font-size:22px}
.apartment-plan-image{display:block;width:100%;padding:24px 3%;cursor:zoom-in}
.apartment-plan-image>.unit-plan{display:block;width:100%;height:clamp(360px,39vw,610px);max-height:none;margin:auto}
.apartment-plan-foot{border-top:1px solid var(--line);padding-top:18px;font-size:11px}.apartment-plan-foot>span{font-size:10px;color:var(--muted)}
.apartment-plan-foot a{display:flex;gap:20px}
.apartment-facts{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;border-bottom:1px solid var(--line);padding:9px 0 24px;gap:20px}
.apartment-facts>div>span{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}
.apartment-facts strong{font-size:27px;font-weight:400;line-height:1}.apartment-facts .status{font-size:11px;padding:6px 0}
.apartment-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-top:18px}
.apartment-tabs button{font-size:13px;position:relative;padding:14px 0;color:var(--muted)}
.apartment-tabs [aria-selected=true]{color:var(--ink)}.apartment-tabs [aria-selected=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--olive)}
.apartment-tab-panel{padding:5px 0 12px;min-height:295px}.apartment-tab-panel[hidden]{display:none}
.apartment-areas,.apartment-materials{margin:0}.apartment-areas>div,.apartment-materials>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}
.apartment-areas dt,.apartment-materials dt{color:var(--muted)}.apartment-areas dd,.apartment-materials dd{margin:0;text-align:right}
.apartment-areas>div:first-child{font-size:17px;padding-block:20px}.apartment-areas>div:first-child dt{color:var(--ink)}.apartment-areas>div:first-child dd{font-weight:500}
.apartment-benefits{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.apartment-benefits span{font-size:10px;border:1px solid #a8785440;padding:5px 9px;color:var(--olive)}
.apartment-page .apartment-note{font-size:11px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.apartment-offer{border-top:1px solid var(--line);padding-top:21px;margin-top:10px}.apartment-offer-price{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.apartment-offer-price>span{font-size:12px;color:var(--muted)}.apartment-offer-price strong{font-size:clamp(25px,2.5vw,38px);font-weight:400;letter-spacing:-.03em}
.apartment-offer>.button{width:100%;justify-content:space-between;min-height:55px}.apartment-offer-links{display:flex;justify-content:space-between;gap:20px;margin-top:12px}.apartment-offer-links .text-link{font-size:12px;gap:14px;padding:12px 0;flex:1}
.apartment-panel-lead{font-size:28px;line-height:1.15;margin:20px 0 15px;letter-spacing:-.03em}.apartment-panel-lead em{color:var(--olive);font-style:normal}
.apartment-panel-lead+p{font-size:13px;color:var(--muted);max-width:420px}.apartment-tab-panel>.text-link{font-size:12px;margin-top:10px}
.apartment-steps{list-style:none;padding:0;margin:0}.apartment-steps li{display:flex;gap:16px;margin:14px 0}.apartment-steps li>span{font-size:11px;color:var(--olive);padding-top:2px}.apartment-steps strong{font-size:13px;font-weight:500}.apartment-steps p{font-size:12px;color:var(--muted);margin-top:4px}
.apartment-life{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(350px,1fr);gap:4vw;border-top:1px solid var(--line);padding-top:70px;margin-top:80px;align-items:center}
.apartment-life figure{margin:0;align-self:stretch;min-height:570px;position:relative;background:var(--ink);overflow:hidden}.apartment-life img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:52% center}.apartment-life figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 22px 20px;background:linear-gradient(transparent,#20262ecc);color:var(--paper);font-size:10px}
.apartment-room-copy h2{font-size:clamp(34px,3.5vw,54px);margin:20px 0}.apartment-room-copy>p:not(.eyebrow):not(.apartment-note){font-size:14px;color:var(--muted);max-width:390px}
.apartment-room-list{margin:24px 0 0}.apartment-room-list>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.apartment-room-list dt{display:flex;gap:15px}.apartment-room-list dt>span{color:var(--olive);font-size:10px;padding-top:2px}.apartment-room-list dd{margin:0;white-space:nowrap}.apartment-room-list .apartment-room-total{font-size:14px;padding-top:18px}
.apartment-similar{margin-top:90px}.apartment-similar>header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.apartment-similar h2{font-size:clamp(34px,3.5vw,52px);margin-top:15px}.apartment-similar>header .text-link{font-size:13px}
.apartment-similar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.apartment-similar-card{background:var(--white);padding:24px;border-top:1px solid var(--line);transition:border-color .25s}.apartment-similar-card:hover{border-color:var(--olive)}
.apartment-similar-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.apartment-similar-top>span{font-size:10px;color:var(--muted)}.apartment-similar-top .status{font-size:10px}
.apartment-similar-card>.unit-plan{height:245px;width:100%;margin:25px 0}.apartment-similar-name{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px}.apartment-similar-name h3{font-size:28px;letter-spacing:-.035em}.apartment-similar-name>span{color:var(--olive);font-size:23px}.apartment-similar-card>p{font-size:12px;color:var(--muted);margin:8px 0 14px}.apartment-similar-card>strong{font-weight:400;font-size:20px}
@media(min-width:1700px){.apartment-overview,.apartment-life{gap:70px}}
@media(max-width:1000px){.apartment-overview,.apartment-life{grid-template-columns:minmax(0,1.1fr) minmax(310px,1fr);gap:25px}.apartment-plan{padding:18px}.apartment-facts{gap:12px}.apartment-facts .status{font-size:10px}.apartment-heading h1{font-size:44px}.apartment-number{display:block;margin:10px 0 0}.apartment-plan-bar p span{display:none}.apartment-plan-foot{align-items:start;flex-direction:column;gap:8px}.apartment-similar-grid{gap:14px}.apartment-similar-card{padding:17px}.apartment-similar-top{align-items:start;flex-direction:column;gap:5px}}
@media(max-width:760px){.apartment-page{padding:100px 20px 60px}.apartment-breadcrumb{font-size:10px;gap:7px}.apartment-heading{padding:28px 0;align-items:start;flex-direction:column;gap:16px}.apartment-heading h1{font-size:40px}.apartment-number{display:inline-block;margin:0 0 0 14px;font-size:.58em}.apartment-heading .eyebrow{font-size:9px}.apartment-back{font-size:12px;padding:0}.apartment-back>span{font-size:18px}.apartment-overview,.apartment-life{grid-template-columns:1fr;gap:30px}.apartment-overview{padding-top:20px}.apartment-plan{position:static;padding:14px 16px}.apartment-plan-image{padding:14px 0}.apartment-plan-image>.unit-plan{height:420px;max-height:60svh}.apartment-plan-bar p span{display:inline;margin-left:12px}.apartment-plan-foot{flex-direction:row;font-size:10px;gap:15px}.apartment-plan-foot>span{font-size:9px;max-width:96px;text-align:right}.apartment-plan-foot a{gap:10px}.apartment-facts{padding:0 0 24px}.apartment-facts .status{font-size:11px}.apartment-tabs{gap:28px}.apartment-tab-panel{min-height:295px}.apartment-offer-price strong{font-size:34px}.apartment-life{margin-top:55px;padding-top:35px}.apartment-life figure{height:430px;min-height:0}.apartment-room-copy h2{font-size:40px}.apartment-similar{margin-top:55px}.apartment-similar>header{align-items:start;flex-direction:column;gap:20px}.apartment-similar-grid{grid-template-columns:1fr;gap:20px}.apartment-similar-card{padding:22px}.apartment-similar-top{flex-direction:row}.apartment-similar-card>.unit-plan{height:280px}.apartment-similar h2{font-size:37px}}
@media(max-width:360px){.apartment-page{padding-inline:15px}.apartment-heading h1{font-size:35px}.apartment-number{display:block;margin:8px 0 0}.apartment-tabs{gap:22px}.apartment-facts{gap:8px}.apartment-offer-links{gap:12px}.apartment-offer-links .text-link{font-size:11px}.apartment-offer-price strong{font-size:29px}}
