:root{--ink:#1e2b32;--blue:#0d4f66;--muted:#6c757a;--sand:#f6f3ee;--clay:#c96f4a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--sand);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.5}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{background:#fff}.wrap{width:min(1280px,calc(100% - 80px));margin:auto}.nav{min-height:86px;display:flex;align-items:center;gap:34px}.brand{font-weight:750;font-size:18px;letter-spacing:.02em}.place{font-size:14px;color:var(--muted)}nav{margin-left:auto;display:flex;gap:8px}nav button,.filter{border:0;background:transparent;padding:8px;color:var(--ink)}nav button[aria-pressed=true]{color:var(--clay);font-weight:bold}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:13px 24px;border-radius:12px;background:var(--blue);color:#fff;border:1px solid transparent;font-weight:600;font-size:16px}.btn.secondary{background:white;border-color:#d8d1c8;color:var(--ink)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:45px 0}.hero h1{font-size:64px;line-height:1.25;letter-spacing:-.025em;font-weight:600;margin:18px 0 20px;max-width:560px}.lead{font-size:22px;color:var(--muted);max-width:560px}.price{font-weight:750;font-size:42px;color:var(--clay);margin:20px 0}.actions{display:flex;gap:15px;flex-wrap:wrap}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:32px}.tags span{border:1px solid #d8d1c8;background:white;border-radius:30px;padding:6px 17px;font-size:14px}.collage{width:100%;aspect-ratio:1;object-fit:cover;border-radius:30px;display:block}.stats{background:white;padding:52px 0}.statgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:25px;text-align:center}.statgrid strong{display:block;color:var(--blue);font-size:30px}.statgrid span{font-size:14px;color:var(--muted)}section.content{padding:28px 0}.eyebrow{color:var(--clay);font-size:13px;font-weight:650;letter-spacing:.08em;margin:0 0 24px}h2{font-size:42px;line-height:1.25;letter-spacing:-.02em;font-weight:600;max-width:790px;margin:0 0 24px}h3{font-size:28px;line-height:1.25}.copy{color:var(--muted);font-size:18px;max-width:760px;margin:0 0 32px}.two{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.plans{gap:30px;align-items:start;margin-top:35px}.plan{width:100%;background:#f9f8f8;border-radius:18px;overflow:hidden}.plan img{width:100%;display:block}.plan.floor1{aspect-ratio:664.882/485.675;position:relative}.plan.floor1 .slice{position:absolute;overflow:hidden}.slice img{position:absolute;max-width:none}.plan.floor1 .s1{top:0;left:0;width:100%;height:64.17%}.s1 img{width:100%;height:auto}.plan.floor1 .s2{top:77.54%;left:0;width:100%;height:12.92%}.s2 img{width:100%;height:auto;bottom:0}.plan.floor1 .s3{left:18.16%;top:64.17%;width:78.91%;height:13.81%}.s3 img{width:100%;height:auto;top:-544.36%}.filters{display:flex;gap:10px;margin:30px 0;flex-wrap:wrap}.filter{background:white;border:1px solid #d8d1c8;border-radius:25px;padding:9px 20px}.filter[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}.photo{padding:0;border:0;background:none;overflow:hidden;border-radius:18px;position:relative}.photo img{width:100%;height:200px;object-fit:cover;display:block;transition:transform .25s}.photo:hover img{transform:scale(1.025)}.gallery .photo:first-child{grid-row:span 2}.gallery .photo:first-child img{height:420px}.gallery .photo[hidden]{display:none}.gallery .photo span{position:absolute;bottom:12px;left:14px;color:white;background:#1e2b32cc;padding:4px 12px;border-radius:16px;font-size:13px}.dark{background:var(--blue);color:white;padding:32px 0}.dark .copy{color:#d7e3e6}.dark .eyebrow{color:#e2bfaf}.equipment{display:grid;grid-template-columns:1fr 1fr;gap:32px;list-style:none;padding:0}.equipment li{border-bottom:1px solid #ffffff30;padding-bottom:18px}.equipment li:before{content:'✓';margin-right:12px;color:#e2bfaf}.terrace{display:grid;grid-template-columns:2fr 1fr;gap:30px}.terrace img{width:100%;border-radius:18px;object-fit:cover}.terrace>img{height:500px}.terrace div img{height:240px}.amenities{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:30px 0}.amenities article{border-radius:18px;padding:25px;background:white}.amenities h3{font-size:22px;color:var(--blue);margin:0 0 16px}.amenities p{font-size:14px;color:var(--muted);margin:0}.complex{width:100%;height:360px;object-fit:cover;border-radius:18px}.distance{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:24px;margin:24px 0}.distance b{font-size:26px;color:var(--clay)}iframe{border:0;border-radius:22px;width:100%;height:380px;background:#dde6e8}.history{background:white;padding:28px 0}.history img{width:100%;height:290px;object-fit:cover;border-radius:18px}.video{width:100%;max-height:650px;border-radius:18px;background:#1e2b32}.note{font-size:14px;color:var(--muted)}footer{background:var(--ink);color:white;padding:80px 0 40px}footer .price{color:#e6b19a;font-size:54px;margin:0 0 20px}footer .copy{color:#d9dddf}footer .phone{font-size:24px;display:block;margin:28px 0}footer small{color:#aeb7ba}.sticky{position:fixed;right:22px;bottom:22px;box-shadow:0 5px 25px #0002;z-index:5}dialog{width:100vw;height:100vh;max-width:none;max-height:none;border:0;margin:0;background:#132027f5;color:white;padding:60px 65px 75px}dialog::backdrop{background:#132027}dialog img{width:100%;height:100%;object-fit:contain}dialog button{position:absolute;border:0;background:#ffffff20;color:white;font-size:36px;min-width:44px;border-radius:8px}#close{right:15px;top:12px}#prev{left:10px;top:46%}#next{right:10px;top:46%}#caption{position:absolute;bottom:12px;left:65px}a:focus-visible,button:focus-visible{outline:3px solid var(--clay);outline-offset:4px}@media(min-width:1350px){.hero .collage{max-width:560px;justify-self:end}.hero{min-height:649px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero{gap:32px}.hero h1{font-size:46px}.statgrid{grid-template-columns:repeat(3,1fr)}.two{gap:30px}h2{font-size:36px}.amenities{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.gallery .photo:first-child{grid-row:auto}.gallery .photo:first-child img{height:200px}.terrace>img{height:400px}.place{display:none}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.nav{gap:10px;min-height:76px;flex-wrap:wrap;padding:14px 0}.brand{font-size:14px}.nav>.btn{display:none}nav{gap:0}.hero{grid-template-columns:1fr;padding:25px 0 40px;gap:30px}.hero h1{font-size:44px;margin-top:5px}.lead{font-size:19px}.price{font-size:36px}.hero .collage{grid-row:2}.actions{gap:10px}.actions .btn{flex:1;padding:12px 15px}.tags{margin-top:24px}.tags span{font-size:12px;padding:5px 12px}.stats{padding:30px 0}.statgrid{gap:24px 8px}.statgrid strong{font-size:24px}.statgrid span{font-size:12px}section.content{padding:20px 0}.two,.terrace{grid-template-columns:1fr;gap:25px}h2{font-size:32px}.copy{font-size:17px}.eyebrow{margin-bottom:18px}.plans{gap:25px}.gallery{gap:12px}.photo img,.gallery .photo:first-child img{height:170px}.gallery .photo:first-child{grid-column:span 2}.gallery .photo:first-child img{height:250px}.dark{padding:24px 0}.equipment{font-size:14px;gap:20px}.amenities{gap:12px}.amenities article{padding:20px}.amenities h3{font-size:19px}.terrace>img{height:310px}.complex{height:260px}.history{padding:24px 0}footer{padding:60px 0 100px}footer .price{font-size:46px}.sticky{bottom:12px;right:12px;font-size:14px;min-height:46px}dialog{padding:65px 36px}.distance{grid-template-columns:90px 1fr;gap:15px}.distance b{font-size:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}
.collage{height:auto}.plan img{height:auto}
/* Align the sea-view caption with the bottom of the terrace photo. */
@media(min-width:651px){
 .terrace>div{height:500px;display:flex;flex-direction:column}
 .terrace>div img{height:0;min-height:0;flex:1;object-fit:cover}
 .terrace>div h3{margin:24px 0 14px}
 .terrace>div .copy{margin:0;flex:none}
}
@media(min-width:651px) and (max-width:1000px){.terrace>div{height:400px}}
