/* Adapted from apple-inspired-design/assets/web/tokens.css and marketing.html.
 * [Inspiration] Marketing: one emphasis per region, semantic tokens, native controls.
 * [Project-rule] Monochrome content + project-specific green, factual architecture.
 * Designer: large, aligned type and restrained surfaces. User: easier scanning.
 * Designer: unfiltered source images. User: no invented architecture or finishes.
 */
:root{color-scheme:light;--font-sans:"Segoe UI",Arial,Helvetica,sans-serif;--font-display:var(--font-sans);--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-2xl:clamp(2.25rem,4.5vw,4.25rem);--font-size-3xl:clamp(3.25rem,5.8vw,5.6rem);--line-tight:1.04;--line-normal:1.55;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:.75rem;--radius-lg:1.5rem;--radius-xl:2rem;--radius-pill:999px;--ui-color-canvas:#fff;--ui-color-surface:#f5f5f7;--ui-color-ink:#191b1c;--ui-color-ink-muted:#5c6266;--ui-color-accent:#155b47;--ui-color-accent-strong:#0c4132;--ui-color-on-accent:#fff;--ui-color-border:#d8dcdf;--ui-color-focus:#0874d8;--shadow-sm:0 8px 24px #1018280d;--duration-fast:140ms;--duration-normal:220ms;--ease-standard:cubic-bezier(.2,.75,.25,1);--content-max:78rem;--reading-max:38rem;--gutter:clamp(1.25rem,4vw,4rem);--nav-height:4.5rem;--section-gap:clamp(4.5rem,8vw,8rem);--material-nav:#ffffffed;--state-selection:#e5f2ec}
* ,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--ui-color-canvas);color:var(--ui-color-ink);font:var(--font-size-md)/var(--line-normal) var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}img{display:block;max-width:100%;height:auto}figure,h1,h2,h3,p,dl,dd{margin:0}button,input{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}:where(a,button,summary):focus-visible{outline:3px solid var(--ui-color-focus);outline-offset:5px}.container{width:min(var(--content-max),calc(100% - var(--gutter)*2));margin-inline:auto}.skip-link{position:fixed;z-index:50;inset-block-start:var(--space-3);inset-inline-start:var(--space-3);transform:translateY(-200%);background:var(--ui-color-ink);color:var(--ui-color-canvas);padding:var(--space-3);border-radius:var(--radius-sm)}.skip-link:focus{transform:none}.ui-nav{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--ui-color-border);background:var(--material-nav);backdrop-filter:blur(14px)}.nav-inner{display:flex;align-items:center;gap:var(--space-6);min-height:var(--nav-height)}.brand{display:flex;flex-direction:column;line-height:1.12;min-height:44px;justify-content:center;text-decoration:none;color:var(--ui-color-ink)}.brand strong{font-weight:600;font-size:1.2rem;letter-spacing:-.045em}.brand span{font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;margin-top:var(--space-1)}nav{display:flex;margin-inline-start:auto;gap:var(--space-6)}nav a{display:flex;min-height:44px;align-items:center;text-decoration:none;font-size:var(--font-size-sm);color:var(--ui-color-ink-muted)}nav a:hover{color:var(--ui-color-ink)}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);color:var(--ui-color-on-accent);background:var(--ui-color-accent);border:0;border-radius:var(--radius-pill);font-size:var(--font-size-sm);font-weight:600;text-decoration:none;cursor:pointer;line-height:1.3;transition:background var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.button:hover{background:var(--ui-color-accent-strong)}.button:active{transform:scale(.98)}.button-small{min-height:44px;padding-inline:var(--space-5)}.menu-toggle{display:none;min-width:44px;min-height:44px;border:0;background:none;color:var(--ui-color-ink);font-size:1.3rem}.hero{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-16);align-items:center;padding-block:var(--space-12) var(--space-20)}.eyebrow{font-size:var(--font-size-sm);font-weight:600;color:var(--ui-color-accent);margin-bottom:var(--space-5)}h1,h2,h3{font-family:var(--font-display);font-weight:650;letter-spacing:-.055em;line-height:var(--line-tight)}h1{font-size:var(--font-size-3xl)}h1 span,h2 span{color:var(--ui-color-accent)}.hero-description{font-size:1.25rem;color:var(--ui-color-ink-muted);line-height:1.4;margin-top:var(--space-6);max-width:var(--reading-max)}.hero-actions{display:flex;gap:var(--space-6);align-items:center;margin-top:var(--space-8);flex-wrap:wrap}.text-link{color:var(--ui-color-accent);min-height:44px;display:inline-flex;align-items:center;text-decoration:none;font-size:var(--font-size-sm);font-weight:600}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.hero-address{font-size:var(--font-size-xs);color:var(--ui-color-ink-muted);margin-top:var(--space-8)}.hero-visual{position:relative;background:var(--ui-color-surface);border-radius:var(--radius-xl);overflow:hidden}.hero-visual img{width:100%;aspect-ratio: .84;object-fit:cover;object-position:center}.hero-visual figcaption{position:absolute;bottom:0;left:0;right:0;background:#ffffffed;color:#43484c;padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs)}h2{font-size:var(--font-size-2xl)}.overview{padding-block:var(--space-20) var(--section-gap);border-top:1px solid var(--ui-color-border)}.overview-intro{text-align:center}.lede{color:var(--ui-color-ink-muted);font-size:clamp(1.125rem,1.7vw,1.35rem);line-height:1.5;max-width:var(--reading-max);margin-top:var(--space-6)}.overview .lede{margin-inline:auto}.facts{margin-top:var(--space-16);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));text-align:center;gap:var(--space-6)}.facts div+div{border-inline-start:1px solid var(--ui-color-border)}.facts dt{font-size:var(--font-size-sm);color:var(--ui-color-ink-muted);margin-bottom:var(--space-2)}.facts dd{font-size:clamp(1.75rem,3vw,2.8rem);font-weight:600;letter-spacing:-.05em;line-height:1.2}.facts dd span{font-size:1.125rem;letter-spacing:-.02em}.plans-section,.rooftop-section{background:var(--ui-color-surface);padding-block:var(--section-gap)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:var(--space-10);margin-bottom:var(--space-10)}.section-heading>p{font-size:var(--font-size-md);color:var(--ui-color-ink-muted);max-width:24rem}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.plan-card{background:var(--ui-color-canvas);padding:var(--space-8);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:flex-start}.plan-type{font-size:var(--font-size-xs);font-weight:600;color:var(--ui-color-ink-muted)}.plan-card h3{font-size:4rem;margin-block:var(--space-10) var(--space-6);font-weight:650;color:var(--ui-color-accent)}.plan-card h3 span{font-size:1.3rem;letter-spacing:-.02em}.plan-card>p:not(.plan-type){font-size:var(--font-size-md);color:var(--ui-color-ink-muted);max-width:28ch}.plan-button{border:1px solid var(--ui-color-border);border-radius:var(--radius-pill);background:none;padding:var(--space-3) var(--space-4);min-height:44px;color:var(--ui-color-ink);margin-top:var(--space-8);font-size:var(--font-size-sm);cursor:pointer;text-align:start;transition:background var(--duration-fast)}.plan-button:hover,.plan-button[aria-pressed=true]{background:var(--state-selection);color:var(--ui-color-accent);border-color:var(--ui-color-accent)}.section-note{font-size:var(--font-size-xs);line-height:1.6;color:var(--ui-color-ink-muted);max-width:64rem;margin-top:var(--space-6)}.leisure{padding-block:var(--section-gap)}.pool-visual img{width:100%;aspect-ratio:2.65;object-fit:cover;border-radius:var(--radius-lg)}figcaption{font-size:var(--font-size-xs);color:var(--ui-color-ink-muted);margin-top:var(--space-2)}.amenities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-10);margin-top:var(--space-12)}.amenities article{border-top:1px solid var(--ui-color-border);padding-top:var(--space-6)}.category{display:block;font-size:var(--font-size-xs);color:var(--ui-color-accent);margin-bottom:var(--space-6)}.amenities h3{font-size:1.4rem;line-height:1.2;letter-spacing:-.035em}.amenities p{margin-top:var(--space-4);color:var(--ui-color-ink-muted)}.rooftop-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-16);align-items:center}.rooftop-grid img{width:100%;border-radius:var(--radius-lg)}.location{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-16);align-items:center;padding-block:var(--section-gap)}.location .text-link{margin-top:var(--space-6)}.location-visual{background:#f4efe7;padding:var(--space-6);border-radius:var(--radius-lg)}.location-visual img{width:100%;height:auto}.contact-section{background:var(--ui-color-surface);padding-block:var(--section-gap)}.contact-inner{text-align:center}.contact-inner .lede{margin-inline:auto}.contact-inner .button{margin-top:var(--space-8)}.contact-caption{color:var(--ui-color-ink-muted);font-size:var(--font-size-xs);margin-top:var(--space-4)}#selection:not(:empty){font-size:var(--font-size-sm);color:var(--ui-color-accent);margin-top:var(--space-6)}.faq{padding-block:var(--section-gap);display:grid;grid-template-columns:1fr 1.4fr;gap:var(--space-16)}.faq h2{font-size:2.5rem}.faq details{border-bottom:1px solid var(--ui-color-border)}.faq summary{cursor:pointer;min-height:60px;padding-block:var(--space-4);font-size:var(--font-size-md);font-weight:600}.faq details p{color:var(--ui-color-ink-muted);padding-bottom:var(--space-6);max-width:var(--reading-max)}footer{background:var(--ui-color-surface);padding-block:var(--space-10)}.footer-top{display:flex;justify-content:space-between;gap:var(--space-6);padding-bottom:var(--space-8)}.footer-top>p{font-size:var(--font-size-sm);color:var(--ui-color-ink-muted);text-align:end}.footer-bottom{border-top:1px solid var(--ui-color-border);padding-top:var(--space-6)}.footer-bottom p{max-width:68rem;font-size:var(--font-size-xs);color:var(--ui-color-ink-muted);margin-bottom:var(--space-3)}
@media(max-width:1024px){.hero{gap:var(--space-8)}nav{gap:var(--space-4)}.hero h1{font-size:clamp(3rem,6.5vw,5rem)}.section-heading{align-items:start}.plan-card{padding:var(--space-6)}.rooftop-grid,.location{gap:var(--space-8)}}
@media(max-width:767px){:root{--nav-height:4rem;--font-size-3xl:clamp(3.1rem,11vw,5rem);--font-size-2xl:clamp(2.3rem,8vw,3.5rem)}.nav-inner{gap:var(--space-3)}.brand{margin-inline-end:auto}.brand strong{font-size:1rem}.brand span{font-size:.75rem}.menu-toggle{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ui-color-canvas);border-bottom:1px solid var(--ui-color-border);padding:var(--space-5) var(--gutter);margin:0}nav[data-open=true]{display:flex;flex-direction:column;gap:var(--space-2)}nav a{font-size:var(--font-size-md)}.hero{grid-template-columns:1fr;gap:var(--space-8);padding-block:var(--space-10) var(--space-12)}.hero h1{font-size:var(--font-size-3xl)}.hero h1 br:first-of-type{display:none}.hero-copy{padding-inline:var(--space-2)}.hero .eyebrow{margin-bottom:var(--space-4)}.hero-description{font-size:var(--font-size-lg);margin-top:var(--space-5)}.hero-actions{margin-top:var(--space-6);gap:var(--space-5)}.hero-address{margin-top:var(--space-5)}.hero-visual img{aspect-ratio:.95}.overview{padding-block:var(--space-16)}.desktop-break{display:none}.facts{gap:var(--space-8);grid-template-columns:1fr;margin-top:var(--space-10)}.facts div+div{border-inline-start:0;border-top:1px solid var(--ui-color-border);padding-top:var(--space-8)}.facts dd{font-size:2.6rem}.section-heading{display:block}.section-heading>p{margin-top:var(--space-5)}.plans-grid,.amenities,.rooftop-grid,.location,.faq{grid-template-columns:1fr}.plan-card{padding:var(--space-8)}.plan-card h3{margin-block:var(--space-6)}.plan-card>p:not(.plan-type){max-width:none}.plan-button{margin-top:var(--space-6)}.pool-visual img{aspect-ratio:1.5;object-fit:cover}.amenities{gap:var(--space-8)}.rooftop-grid,.location,.faq{gap:var(--space-10)}.faq h2{font-size:var(--font-size-2xl)}.footer-top{flex-wrap:wrap}.footer-top>p{text-align:start}.contact-inner h2{font-size:var(--font-size-2xl)}}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--ui-color-canvas:#151718;--ui-color-surface:#202425;--ui-color-ink:#f5f5f7;--ui-color-ink-muted:#b5bdbe;--ui-color-accent:#9bd1b6;--ui-color-accent-strong:#b6e4cd;--ui-color-on-accent:#13271e;--ui-color-border:#454b4d;--material-nav:#151718ee;--ui-color-focus:#84c5ff;--state-selection:#243b31}.hero-visual figcaption{background:#151718ed;color:#e0e5e5}.location-visual figcaption{color:#43484c}}
@media(prefers-contrast:more){:root{--ui-color-ink-muted:var(--ui-color-ink);--ui-color-border:var(--ui-color-ink)}}
/* [Inspiration] Feedback for pointer and keyboard, without moving the layout. */
:root{--motion-feedback:220ms;--motion-image:600ms;--motion-ease:cubic-bezier(.16,1,.3,1);--motion-lift:-3px;--motion-image-scale:1.025}
.plan-card{transition:transform var(--motion-feedback) var(--motion-ease),box-shadow var(--motion-feedback) var(--motion-ease)}
.plan-card:focus-within{box-shadow:var(--shadow-sm)}
.button{transition:background var(--duration-fast) var(--ease-standard),transform var(--motion-feedback) var(--motion-ease)}
.button:focus-visible{transform:translateY(-1px)}
.rooftop-grid figure{overflow:hidden;border-radius:var(--radius-lg)}
.rooftop-grid figure img{transition:transform var(--motion-image) var(--motion-ease)}
@media(hover:hover) and (pointer:fine){.plan-card:hover{transform:translateY(var(--motion-lift));box-shadow:var(--shadow-sm)}.button:hover{transform:translateY(-1px)}.rooftop-grid figure:hover img{transform:scale(var(--motion-image-scale))}}
/* Small scroll-linked framing only where native support exists; no scroll hijack. */
@supports(animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.hero-visual img{animation:architecture-framing linear both;animation-timeline:view();animation-range:exit 0% exit 90%}@keyframes architecture-framing{from{transform:scale(1)}to{transform:scale(var(--motion-image-scale))}}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}:root{--duration-fast:0ms;--duration-normal:0ms;--motion-feedback:0ms;--motion-image:0ms}.button:active,.button:focus-visible,.button:hover,.plan-card:hover,.rooftop-grid figure:hover img{transform:none}.hero-visual img{animation:none;transform:none}}
