.figure{margin:0}.figure__media{background:var(--limestone);width:100%;overflow:hidden}.figure__media img{object-fit:cover;width:100%;height:100%}.figure__caption{margin-top:14px;display:block}.header{z-index:60;transition:background .7s var(--ease), padding .7s var(--ease), border-color .7s var(--ease);color:var(--text-invert);border-bottom:1px solid #0000;padding-block:clamp(14px,1.7vw,26px);position:fixed;inset:0 0 auto}.header.is-solid{-webkit-backdrop-filter:saturate(140%)blur(14px);border-bottom-color:var(--line);color:var(--text);background:#f6f3ece6;padding-block:clamp(9px,1vw,13px)}.header__inner{max-width:var(--max);padding-inline:var(--pad);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-inline:auto;display:grid}.header__brand{justify-self:start;display:block}.header__logo{width:clamp(104px,8.4vw,126px);height:auto;transition:filter .7s var(--ease), width .7s var(--ease)}.header.is-solid .header__logo{filter:brightness(0)saturate()invert(9%)sepia(8%)saturate(870%)hue-rotate(107deg)brightness(95%)contrast(92%);width:clamp(90px,6.4vw,102px)}.header__nav{justify-self:center;gap:clamp(20px,2.6vw,46px);display:flex}.header__link{letter-spacing:.24em;text-transform:uppercase;opacity:.86;transition:opacity .4s var(--ease);padding-block:4px;font-size:10.5px;font-weight:400;position:relative}.header__link:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform .6s var(--ease-out-expo);background:currentColor;position:absolute;bottom:0;left:0;transform:scaleX(0)}.header__link:hover{opacity:1}.header__link:hover:after{transform:scaleX(1)}.header__actions{justify-self:end;align-items:center;gap:18px;display:flex}.header__cta{padding:13px 26px}.header.is-solid .header__cta{--btn-fg:var(--text);--btn-line:var(--line-strong)}.header.is-solid .header__cta:before{background:var(--text)}.header.is-solid .header__cta:hover{color:var(--bone)}.header__toggle{flex-direction:column;justify-content:center;gap:6px;width:30px;height:18px;display:none;position:relative}.header__toggle span{width:100%;height:1px;transition:transform .5s var(--ease-out-expo), opacity .3s;background:currentColor;display:block}.header.is-menu-open{color:var(--text-invert);-webkit-backdrop-filter:none;background:0 0;border-bottom-color:#0000}.header.is-menu-open .header__logo{filter:none}.header.is-menu-open .header__toggle span:first-child{transform:translateY(3.5px)rotate(45deg)}.header.is-menu-open .header__toggle span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.menu{z-index:55;background:var(--ink);color:var(--text-invert);padding:clamp(96px, 14vh, 160px) var(--pad) clamp(40px, 6vh, 72px);clip-path:inset(0 0 100%);transition:clip-path .9s var(--ease-out-expo);pointer-events:none;flex-direction:column;justify-content:center;gap:48px;display:flex;position:fixed;inset:0}.menu.is-open{clip-path:inset(0);pointer-events:auto}.menu__nav{flex-direction:column;gap:clamp(8px,1.4vh,16px);display:flex}.menu__link{color:var(--text-invert);opacity:0;transition:opacity .8s var(--ease-out-expo), transform .8s var(--ease-out-expo);transform:translateY(22px)}.menu.is-open .menu__link{opacity:1;transform:none}.menu__footer{border-top:1px solid var(--line-invert);flex-direction:column;align-items:flex-start;gap:22px;padding-top:28px;display:flex}.menu__email{color:#f6f3ec99}@media (width<=1024px){.header__nav{display:none}.header__inner{grid-template-columns:1fr auto}.header__toggle{display:flex}.header__cta{display:none}}.footer{padding-block:clamp(56px,7vw,110px) clamp(28px,3vw,44px)}.footer__top{border-bottom:1px solid var(--line-invert);grid-template-columns:auto 1fr auto;align-items:start;gap:clamp(28px,5vw,80px);padding-bottom:clamp(36px,5vw,70px);display:grid}.footer__logo{width:clamp(92px,7.6vw,118px);height:auto}.footer__nav{flex-wrap:wrap;justify-content:center;gap:clamp(16px,2.4vw,38px);padding-top:12px;display:flex}.footer__link{color:#f6f3eca8;transition:color .4s}.footer__link:hover{color:var(--bone)}.footer__contact{text-align:right;flex-direction:column;align-items:flex-end;gap:10px;display:flex}.footer__email{color:var(--bone);border-bottom:1px solid var(--line-invert);padding-bottom:3px;font-size:15px;font-weight:300}.footer__place{color:#f6f3ec66}.footer__bottom{justify-content:space-between;align-items:flex-end;gap:32px;margin-top:clamp(24px,3vw,40px);display:flex}.footer__disclaimer{color:#f6f3ec59;max-width:74ch;margin:0;font-size:11px;font-weight:300;line-height:1.75}.footer__copy{color:#f6f3ec66;white-space:nowrap}@media (width<=900px){.footer__top{grid-template-columns:1fr;gap:30px}.footer__nav{justify-content:flex-start}.footer__contact{text-align:left;align-items:flex-start}.footer__bottom{flex-direction:column;align-items:flex-start;gap:18px}}@media (width>=1800px){:root{--max:2000px;--pad:clamp(104px, 5.6vw, 150px);--section-y:clamp(190px, 9.6vw, 250px)}html .display--hero{font-size:clamp(118px,6.4vw,172px)}html .display--xl{font-size:clamp(94px,4.9vw,132px)}html .display--lg{font-size:clamp(62px,3.3vw,88px)}html .display--md{font-size:clamp(40px,2.1vw,54px)}html .lede{font-size:clamp(30px,1.55vw,40px)}html .body-text{font-size:clamp(16.5px,.8vw,20px)}html .label,html .caption,html .section-head__index,html .btn,html .link-line,html .header__link{font-size:clamp(10.5px,.52vw,13px)}html .header__logo{width:clamp(126px,6.6vw,168px)}html .header.is-solid .header__logo{width:clamp(102px,5.2vw,134px)}html .rooms__label{font-size:clamp(28px,1.55vw,38px)}html .rooms__index{width:min(32%,460px)}html .rooms__num,html .amenity__index,html .gallery-page__filter-count{font-size:12px}html .amenity__name{font-size:clamp(25px,1.35vw,34px)}html .amenity__text{font-size:clamp(13.5px,.68vw,17px)}html .apartment-plan__feature,html .ownership__point{font-size:clamp(14.5px,.74vw,18px)}html .floor-plans__facts dd{font-size:clamp(15px,.76vw,19px)}html .floor-plans__note,html .apartment-plan__note{font-size:clamp(12px,.6vw,15px)}html .furniture__tagline{font-size:clamp(20px,1.05vw,26px)}html .gallery-page__filter{font-size:clamp(24px,1.3vw,32px)}html .rooms__viewer,html .amenities__viewer,html .tour__frame{max-height:80vh}html .contact__form{max-width:clamp(520px,30vw,760px)}html .field__label{font-size:clamp(10px,.5vw,12.5px)}html .field__input,html .contact__email,html .footer__email{font-size:clamp(15px,.78vw,19px)}html .contact__note,html .footer__disclaimer{font-size:clamp(11px,.55vw,13.5px)}}@media (width>=2300px){:root{--max:2320px}html .gallery-page__grid{columns:4}}
