:root{--sea:#1f4e5f;--deep:#12303b;--sand:#f5efe6;--ink:#1d2a30;--accent:#c98b4a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:300 17px/1.65 Inter,sans-serif;color:var(--ink);background:var(--sand)}
h1,h2,h3,.logo,.price{font-family:"Cormorant Garamond",serif;font-weight:600}h2{font-size:2.2rem;color:var(--sea);margin:0 0 1rem}h3{font-size:1.5rem;color:var(--sea);margin:2rem 0 .5rem}
.wrap{max-width:1100px;margin:auto;padding:4rem 1.2rem}
.nav{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;gap:1rem;padding:.7rem 1.2rem;background:rgba(18,48,59,.85);backdrop-filter:blur(6px)}
.logo{color:#fff;font-size:1.5rem;text-decoration:none;margin-right:auto}.nav nav{display:none}.nav nav a{color:#fff;text-decoration:none;margin:0 .7rem;font-size:.9rem}
.lang button{background:none;border:1px solid #fff6;color:#fff;padding:.2rem .5rem;cursor:pointer;font-size:.8rem}.lang button.on{background:#fff;color:var(--deep)}
.hero{min-height:100vh;background:center/cover;position:relative;display:flex;align-items:flex-end;color:#fff}.veil{position:absolute;inset:0;background:linear-gradient(90deg,#0b1f2799,#0b1f2700 65%),linear-gradient(180deg,#0003,#0b1f27cc)}
.hero-in{position:relative;padding:6rem 1.2rem 3rem;max-width:1100px;margin:auto;width:100%}.hero h1{font-size:4rem;margin:0;line-height:1}.kicker{letter-spacing:.2em;text-transform:uppercase;font-size:.8rem}.tag{font-size:1.2rem;max-width:36rem}
.price{font-size:2.6rem;margin:.5rem 0 0}.owner{opacity:.9;margin:0 0 1.5rem}
.btn{display:inline-block;background:var(--accent);color:#fff;border:0;padding:.85rem 1.4rem;border-radius:2px;text-decoration:none;font:600 .95rem Inter;cursor:pointer;margin:.3rem .3rem .3rem 0}.ghost{background:transparent;border:1px solid #fff}.ghost.dark{border-color:var(--sea);color:var(--sea)}.wa{background:#25d366}
.facts{display:grid;grid-template-columns:repeat(2,1fr);background:var(--deep);color:#fff;text-align:center}.facts div:last-child{grid-column:1/-1}.facts div{padding:1.3rem .5rem;border:1px solid #ffffff14}.facts b{display:block;font:600 1.6rem "Cormorant Garamond"}.facts span{font-size:.8rem;opacity:.8}
.lead{font-size:1.3rem;font-style:italic;color:var(--sea)}.floors,.feat{padding-left:1.1rem}.feat{columns:1}
.vph{aspect-ratio:16/9;background:center/cover;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.vph:before{content:"";position:absolute;inset:0;background:#0007}.vph *{position:relative}.vph span{font-size:4rem}
.video iframe{width:100%;aspect-ratio:16/9;border:0}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.grid img{width:100%;aspect-ratio:4/3;object-fit:cover;cursor:zoom-in;display:block;transition:.3s}.grid img:hover{opacity:.85}
.loc-in{display:grid;gap:1.5rem}.map{width:100%;height:340px;border:0}.note{font-size:.85rem;opacity:.75}
.rent{background:#fff;max-width:none}.rent>*{max-width:1100px;margin-left:auto;margin-right:auto}.rgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.rgrid div{border:1px solid #1f4e5f33;padding:1rem;text-align:center}.rgrid b{display:block;color:var(--sea);font:600 1.4rem "Cormorant Garamond"}.rgrid span{font-size:.85rem}
.contact{background:var(--sea);color:#fff}.contact h2{color:#fff}.ct-in{display:grid;gap:2rem}form{display:grid;gap:.6rem}input,textarea{padding:.8rem;border:0;font:inherit;border-radius:2px}.side .ghost.dark{border-color:#fff;color:#fff}.small{font-size:.9rem}.legal{font-size:.75rem;opacity:.7;margin-top:2rem}
footer{background:var(--deep);color:#fff9;text-align:center;padding:1.5rem;font-size:.8rem}
.lb{position:fixed;inset:0;background:#000e;z-index:20;display:flex;align-items:center;justify-content:center}.lb[hidden]{display:none}.lb img{max-width:92vw;max-height:88vh}.lb button{position:absolute;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer}.x{top:.5rem;right:1rem}.pv{left:.5rem}.nx{right:.5rem}
@media(min-width:800px){.nav nav{display:block}.hero h1{font-size:6rem}.facts{grid-template-columns:repeat(5,1fr)}.facts div:last-child{grid-column:auto}.grid{grid-template-columns:repeat(4,1fr)}.loc-in,.ct-in{grid-template-columns:1fr 1fr}.rgrid{grid-template-columns:repeat(4,1fr)}.feat{columns:2}}
.logo{font-size:1.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lang{white-space:nowrap;flex:none}.hero h1{font-size:2.8rem}
@media(min-width:800px){.logo{font-size:1.5rem}.hero h1{font-size:5rem}}
.insets{position:absolute;left:1.2rem;bottom:1.2rem;display:flex;gap:.6rem;z-index:2;align-items:flex-start}.inset{margin:0;width:90px;cursor:zoom-in;z-index:2}.inset img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border:2px solid #fff;border-radius:10px;box-shadow:0 6px 20px #0009}.inset figcaption{font-size:.65rem;line-height:1.2;margin-top:.35rem;text-shadow:0 1px 4px #000}
.hero-in{padding-bottom:220px}
@media(min-width:800px){.insets{left:2rem;bottom:2rem;gap:1rem}.inset{width:180px}.inset figcaption{font-size:.85rem}.hero-in{padding-bottom:330px}}
.comp{display:grid;grid-template-columns:1fr;gap:6px;background:#0b1f27;padding:6px}.comp figure{margin:0;position:relative;cursor:zoom-in;overflow:hidden}.comp img{display:block;width:100%;height:260px;object-fit:cover}.comp figure:nth-child(2) img{object-position:center bottom}.comp figure:nth-child(3) img{object-position:center 70%}
.comp figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.4rem .9rem .7rem;color:#fff;font-size:.9rem;letter-spacing:.05em;background:linear-gradient(#0000,#0b1f27cc)}
@media(min-width:800px){.comp{grid-template-columns:1fr 1.4fr 1fr}.comp img{height:420px}}
@media(min-width:800px){.inset{width:140px}.inset figcaption{font-size:.8rem}.hero-in{padding-bottom:395px}.hero-in .btns{position:absolute;right:1.2rem;bottom:calc(2rem + 1.6rem);display:flex;gap:.6rem}.hero-in .btns .btn{margin:0}}
.tlink{color:#fff;font:500 .9rem Inter;text-decoration:underline;text-underline-offset:3px;opacity:.9;display:inline-block;margin:.6rem .3rem}.tlink:hover{opacity:1}
@media(min-width:800px){.hero-in{max-width:1360px;padding-left:2rem}.hero h1{font-size:4.1rem;white-space:nowrap}.hero-in .btns{align-items:center}.tlink{margin:0 0 0 .4rem}}

#map{height:380px;border-radius:8px;z-index:0}
.hpin span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border:3px solid #c0392b;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 6px #0006}
.hpin span{font-size:0}.hpin span::after{content:"🏠";font-size:20px;transform:rotate(45deg)}
.btn.tour{display:inline-block;margin-top:1rem;background:var(--deep,#1f4e5f);color:#fff}


.tour-wrap{display:flex;justify-content:flex-end;margin-top:1.5rem}.contact .btn.tour{background:#fff;color:#1f4e5f;border:2px solid #fff;font-weight:600;margin:0}.contact .btn.tour:hover{background:#f3e6d3}

/* v5 */
.facts .ic{display:block;font-style:normal;font-size:1.3rem;margin-bottom:.2rem}.facts div:last-child{grid-column:auto}
@media(min-width:800px){.facts{grid-template-columns:repeat(6,1fr)}.hero h1{white-space:normal;font-size:3.6rem;max-width:22ch}}
.specs{display:grid;grid-template-columns:1fr;gap:0;margin:0;border-top:1px solid #0001}.specs div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid #0001}.specs dt{color:var(--sea);font-weight:600}.specs dd{margin:0;text-align:right}
@media(min-width:800px){.specs{grid-template-columns:1fr 1fr;column-gap:3rem}}
.viv{padding-left:1.1rem;line-height:1.6}.viv li{margin:.5rem 0}
.faq details{border-bottom:1px solid #0001;padding:.8rem 0}.faq summary{cursor:pointer;font-weight:600;color:var(--sea)}.faq p{margin:.5rem 0 0}
.wa-fab{position:fixed;right:16px;bottom:16px;z-index:50;display:flex;align-items:center;gap:.45rem;background:#25d366;color:#fff;text-decoration:none;font:600 .95rem Inter;padding:.7rem 1rem;border-radius:40px;box-shadow:0 4px 14px #0004}
@media(max-width:600px){.wa-fab span{display:none}.wa-fab{padding:.8rem;border-radius:50%}}

.smap{position:relative;overflow:hidden;background:#e8e4da}.smap>a:first-child{display:block;height:100%}.smap img{width:100%;height:100%;object-fit:cover;display:block}.smap .hpin{position:absolute;left:50%;top:50%;transform:translate(-20px,-40px)}.smap .attr{position:absolute;right:0;bottom:0;background:#fffc;font-size:.7rem;padding:1px 5px;color:#333}.smap .attr a{color:inherit}.smap .mapbtn{position:absolute;left:10px;top:10px;background:#fff;color:var(--sea);padding:.45rem .8rem;border-radius:4px;font-size:.85rem;font-weight:600;text-decoration:none;box-shadow:0 1px 4px #0004}
