@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600&display=swap');

:root{--navy:#102b3a;--ink:#19333e;--river:#2f7184;--mist:#edf3f2;--sand:#e1c7a4;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fbfcfb;font-family:var(--sans);line-height:1.65}
img{display:block;max-width:100%}
a{color:inherit}
.topbar{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;gap:2rem;padding:1.4rem 4.5vw;color:white;border-bottom:1px solid rgba(255,255,255,.25)}
.brand{margin-right:auto;font-family:var(--serif);font-size:1.18rem;text-decoration:none}
nav{display:flex;gap:1.7rem}nav a{text-decoration:none;font-size:.9rem}
.button{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.25rem;background:var(--sand);color:#19303a;text-decoration:none;font-weight:600;border:0;transition:.2s ease}
.button:hover{background:#f0d6b3;transform:translateY(-1px)}
.button-small{padding:.65rem 1rem;font-size:.86rem}
.hero{position:relative;min-height:90vh;color:#fff;display:flex;align-items:flex-end;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,30,40,.86) 0%,rgba(8,30,40,.5) 47%,rgba(8,30,40,.08) 80%),linear-gradient(0deg,rgba(5,24,32,.45),transparent 45%)}
.hero-content{position:relative;z-index:1;max-width:760px;padding:12rem 6vw 7rem}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:600;margin:0 0 1.2rem;color:#e9d4b7}.eyebrow.dark{color:var(--river)}
h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.08}
h1{font-size:clamp(3.6rem,7.6vw,7.2rem);margin-bottom:1.7rem}h2{font-size:clamp(2.35rem,4.5vw,4.3rem);margin-bottom:1.4rem}h3{font-size:1.25rem}
.hero-lead{max-width:620px;font-size:1.16rem;color:rgba(255,255,255,.9)}
.hero-actions{display:flex;align-items:center;gap:1.5rem;margin-top:2.2rem}.text-link{text-underline-offset:.35rem}
.image-note{position:absolute;z-index:2;right:2rem;bottom:1.2rem;font-size:.7rem;color:rgba(255,255,255,.75)}
.facts{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:white;padding:2.2rem 6vw}
.facts div{padding:0 2rem;border-right:1px solid rgba(255,255,255,.2)}.facts div:first-child{padding-left:0}.facts div:last-child{border:0}
.facts strong{display:block;font-family:var(--serif);font-size:2rem;font-weight:500}.facts span{font-size:.8rem;color:rgba(255,255,255,.72)}
.section{padding:8rem 6vw}.intro{display:grid;grid-template-columns:1fr 2.1fr;gap:6vw}.section-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;color:var(--river);padding-top:.7rem}
.intro-copy>p{max-width:780px;font-size:1.13rem}.mixed-use{margin-top:3.5rem;padding:2.2rem 2.5rem;border-left:3px solid var(--sand);background:var(--mist);max-width:850px}.mixed-use .tag{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--river);font-weight:600;margin-bottom:.6rem}.mixed-use h3{font-family:var(--serif);font-size:1.8rem;margin-bottom:.7rem}.mixed-use p:last-child{margin-bottom:0}
.feature{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center;background:var(--mist)}.feature-image{position:relative}.feature-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.feature-image span{position:absolute;left:1rem;bottom:1rem;background:rgba(16,43,58,.88);color:white;padding:.65rem .9rem;font-size:.75rem;letter-spacing:.06em}.feature-copy p{font-size:1.04rem}.clean-list{list-style:none;padding:0;margin:2rem 0 0;border-top:1px solid #b8c8c8}.clean-list li{padding:.7rem 0;border-bottom:1px solid #b8c8c8}
.mixed-use-section{padding-top:4rem;padding-bottom:4rem}.mixed-use-section .mixed-use{margin:0 auto}
.comfort{background:#fff}.comfort>div:first-child{max-width:880px}.comfort-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3.5rem}.comfort-grid article{padding:1.6rem;border-top:2px solid var(--sand);background:#f6f8f7}.comfort-grid article>span{font-family:var(--serif);font-size:2rem;color:#91a5a8}.comfort-grid h3{margin:.5rem 0}.comfort-grid p{font-size:.9rem;margin:0}
.gallery{padding-top:4rem}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2.5rem}.gallery-heading>p{max-width:480px;font-size:.84rem;color:#667b83}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:310px;gap:1rem}.gallery-item{position:relative;grid-column:span 2;padding:0;border:0;cursor:pointer;overflow:hidden;background:#ddd}.gallery-item.half{grid-column:span 3}.gallery-item.wide{grid-column:span 4}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item.plan img{object-fit:contain;background:#fff}.gallery-item:hover img{transform:scale(1.035)}.gallery-item span{position:absolute;left:0;bottom:0;padding:1rem 1.2rem;color:white;width:100%;text-align:left;background:linear-gradient(transparent,rgba(8,30,40,.8))}
.location{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:white;padding:0}.location-copy{padding:8rem 6vw}.location h2{font-size:clamp(2.4rem,4vw,4rem)}.location-copy>p:not(.eyebrow){color:rgba(255,255,255,.78)}.location>img{width:100%;height:100%;object-fit:cover}.area-list{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2rem}.area-list span{border:1px solid rgba(255,255,255,.28);padding:.45rem .75rem;font-size:.75rem}
.details{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.rent-card{background:var(--mist);padding:2.5rem}.rent-card>p{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #c6d3d3}.rent-card strong{font-family:var(--serif);font-size:1.65rem}.rent-card span{text-align:right;font-size:.85rem}.rent-card .total strong{font-size:2.25rem}.rent-card small{display:block;color:#60747c;margin-bottom:1.5rem}.rent-card .button{width:100%}
footer{display:flex;justify-content:space-between;gap:3rem;padding:3rem 6vw;background:#0a202b;color:rgba(255,255,255,.7);font-size:.78rem}footer strong{color:white;font-family:var(--serif);font-size:1rem}footer p:last-child{text-align:right}
dialog{width:min(1000px,90vw);border:0;padding:0;background:#091d26;color:white;box-shadow:0 30px 80px rgba(0,0,0,.5)}dialog::backdrop{background:rgba(0,0,0,.8)}dialog img{width:100%;max-height:78vh;object-fit:contain}dialog p{margin:0;padding:1rem 1.4rem;font-size:.85rem}.close{position:absolute;right:.7rem;top:.7rem;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:rgba(255,255,255,.9);font-size:1.6rem;cursor:pointer}
@media(max-width:900px){.topbar nav{display:none}.topbar{padding:1.1rem 5vw}.hero{min-height:820px}.hero-content{padding:10rem 6vw 6rem}.facts{grid-template-columns:1fr 1fr;gap:1.5rem}.facts div{padding:0;border:0}.intro,.feature,.details{grid-template-columns:1fr}.comfort-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item,.gallery-item.half{grid-column:span 1}.gallery-item.wide{grid-column:span 2}.location{grid-template-columns:1fr}.location>img{height:460px}.gallery-heading{display:block}footer{display:block}footer p:last-child{text-align:left;margin-top:2rem}}
@media(max-width:580px){.topbar .button{display:none}.hero-actions{align-items:flex-start;flex-direction:column}.hero-content{padding-left:5vw;padding-right:5vw}.section{padding:5rem 5vw}.facts{padding:1.7rem 5vw}.facts strong{font-size:1.65rem}.intro{gap:2rem}.mixed-use{padding:1.5rem;margin-top:2rem}.comfort-grid{grid-template-columns:1fr}.gallery-grid{display:block}.gallery-item{display:block;width:100%;height:280px;margin-bottom:.8rem}.location-copy{padding:5rem 5vw}.location>img{height:320px}.rent-card{padding:1.5rem}h1{font-size:3.2rem}.image-note{right:1rem}.brand{font-size:1rem}}

.rent-card .figaro-secondary{margin-top:1rem}
