*{box-sizing:border-box;margin:0}
:root{--ink:#10302b;--sea:#0e5e57;--sand:#f6f1e7;--card:#ffffffd9}
html,body{height:100%}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--sand) center/cover fixed no-repeat;
  background-image:linear-gradient(rgba(246,241,231,.55),rgba(246,241,231,.85)),url(/img/gallery/g16.jpg);display:flex;flex-direction:column;min-height:100%}
header,footer{padding:28px 24px;text-align:center}
header h1{font-size:clamp(2rem,6vw,3.2rem);letter-spacing:.04em;font-weight:600;color:var(--sea)}
header p{margin-top:8px;font-size:1.05rem;opacity:.8}
main{flex:1;display:flex;align-items:center;justify-content:center;padding:16px}
.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;width:100%;max-width:820px}
a.choice{display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff;
  background:#0e5e57 center/cover no-repeat;box-shadow:0 8px 24px #0003;transition:transform .15s}
a.choice:hover,a.choice:focus-visible{transform:translateY(-3px);outline:3px solid #fff8}
a.choice .txt{padding:60px 22px 22px;background:linear-gradient(transparent,#000a)}
a.choice h2{font-size:1.6rem;font-weight:600}
a.choice p{margin-top:6px;font-size:.98rem;opacity:.92}
.villa{background-image:url(/img/gallery/g01.jpg)}
.res{background-image:linear-gradient(135deg,#0e5e57,#1d8a80)}
.soon{display:inline-block;margin-top:10px;padding:3px 10px;border-radius:999px;background:#fff3;font-size:.8rem}
footer{font-size:.85rem;opacity:.7}
.box{max-width:560px;padding:32px;border-radius:18px;background:var(--card);text-align:center;box-shadow:0 8px 24px #0002}
.box h2{color:var(--sea);margin-bottom:12px}
.box a{color:var(--sea)}
