
:root{--bg:#f6f7f3;--paper:#fff;--ink:#203137;--muted:#66797d;--sea:#1e7186;--sea2:#15596b;--sand:#e9d2aa;--line:#dce6e4;--shadow:0 18px 45px rgba(24,58,66,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}
.topbar{background:#173b45;color:#eef8f8;font-size:.9rem}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:42px}.contact,.langs{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.topbar a:hover{text-decoration:underline}.langs a.active{font-weight:800;color:#fff}.langs span{opacity:.35}
.nav{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(25,62,72,.08)}.nav .wrap{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:Georgia,serif;font-size:1.5rem;font-weight:700}.brand small{display:block;font-size:.72rem;font-weight:400;color:var(--muted);margin-top:-4px}.menu{display:flex;gap:22px;align-items:center;font-size:.95rem;font-weight:650}.menu a:hover,.menu a.active{color:var(--sea)}.menu .cta{background:var(--sea);color:#fff;padding:10px 15px;border-radius:999px}.burger{display:none;border:0;background:none;font-size:1.7rem;cursor:pointer}
.hero{min-height:610px;position:relative;display:grid;align-items:end;background:linear-gradient(90deg,rgba(7,31,39,.62),rgba(7,31,39,.20)),url('img/hero.webp') center 54%/cover no-repeat;color:#fff}.hero .content{padding:80px 0}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#b9e1e7}.hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5.2rem);line-height:1.02;margin:.15em 0}.hero p{font-size:1.15rem;max-width:700px;color:#eef8f8}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;font-weight:750;border:1px solid transparent}.btn-primary{background:var(--sea);color:#fff}.btn-primary:hover{background:var(--sea2)}.btn-light{background:rgba(255,255,255,.94);color:var(--ink)}.btn-outline{border-color:var(--sea);color:var(--sea);background:transparent}
.section{padding:78px 0}.section.white{background:#fff}.section-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800;color:var(--sea)}h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:.3em 0 .5em}h3{margin:.2em 0}.lead{font-size:1.08rem;color:var(--muted);max-width:800px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:28px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:26px}.card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(24,58,66,.06)}.card img{width:100%;height:320px;object-fit:cover}.card-body{padding:24px}.meta{color:var(--sea);font-weight:700;font-size:.92rem}.price{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.text-link{color:var(--sea);font-weight:800}
.page-hero{min-height:360px;display:grid;align-items:end;color:#fff;background:linear-gradient(90deg,rgba(7,31,39,.65),rgba(7,31,39,.15)),var(--hero) center/cover no-repeat}.page-hero .wrap{padding:58px 0}.page-hero h1{font-family:Georgia,serif;font-size:clamp(2.6rem,6vw,4.3rem);line-height:1.05;margin:.2em 0}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:52px}.aside{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;height:max-content;position:sticky;top:100px}.aside a{display:block;padding:8px 0;color:var(--sea);font-weight:700}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:28px 0}.gallery img{width:100%;height:300px;object-fit:cover;border-radius:15px}.table-wrap{overflow-x:auto}.price-table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden}.price-table th,.price-table td{padding:13px;border-bottom:1px solid var(--line);text-align:left}.price-table th{background:#eef6f5}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.fact{background:#eef6f5;padding:16px;border-radius:14px}.fact strong{display:block;font-size:1.35rem;color:var(--sea)}.distances{columns:2;column-gap:28px}.distances div{break-inside:avoid;display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.location{background:#173b45;color:#eef8f8}.location-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}.map-card{min-height:330px;border-radius:24px;background:linear-gradient(145deg,#e7efe9,#cddfdd);display:grid;place-items:center;color:var(--ink);padding:28px}.pin{background:#fff;border-radius:18px;padding:22px;box-shadow:var(--shadow);text-align:center}.pin span{display:block;color:var(--muted);margin:4px 0 16px}.explore{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}.explore a{display:flex;gap:16px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.explore a:hover{border-color:#a9cdcf}.explore-icon{font-size:1.5rem}.contact-card{background:#fff;border-radius:22px;padding:28px;box-shadow:var(--shadow)}.contact-card a{color:var(--sea);font-weight:750}.footer{background:#102d35;color:#dbe8ea;padding:48px 0 24px}.footer-grid{display:flex;justify-content:space-between;gap:40px}.footer nav{display:flex;gap:16px;flex-wrap:wrap}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px;color:#9fb4b8;font-size:.9rem}
@media(max-width:850px){.topbar .wrap{align-items:flex-start;padding:8px 0;flex-direction:column;gap:5px}.contact,.langs{gap:10px}.nav .wrap{min-height:66px}.burger{display:block}.menu{display:none;position:absolute;left:0;right:0;top:66px;background:#fff;padding:18px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.menu.open{display:flex}.menu .cta{text-align:center}.hero{min-height:560px;background-position:58% center}.hero .content{padding:56px 0}.cards,.grid2,.content-grid,.location-grid,.explore{grid-template-columns:1fr}.aside{position:static}.facts{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr}.gallery img{height:auto}.distances{columns:1}.footer-grid{flex-direction:column}.page-hero{min-height:300px}}
@media(max-width:520px){.wrap{width:min(100% - 26px,1180px)}.contact{font-size:.83rem}.langs{font-size:.82rem}.brand{font-size:1.25rem}.hero{min-height:520px}.hero h1{font-size:2.65rem}.section{padding:58px 0}.card img{height:250px}.facts{grid-template-columns:1fr}.actions .btn{width:100%}}

.apartment-switcher{background:#fff;border-bottom:1px solid rgba(16,54,63,.12)}
.apartment-switcher .wrap{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.apartment-switcher a{display:inline-block;padding:8px 12px;border-radius:999px;text-decoration:none;font-weight:700;border:1px solid rgba(16,54,63,.14)}
.apartment-switcher a:first-child{border-color:transparent;padding-left:0}
.apartment-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.apartment-overview{grid-template-columns:1fr}.apartment-switcher .wrap{gap:6px}.apartment-switcher a{font-size:.92rem;padding:7px 10px}}

.location-photo-placeholder{background:#fff;padding:28px 0 4px}
.location-photo-placeholder img{display:block;width:100%;max-height:440px;object-fit:cover;border-radius:18px}
.placeholder-note{text-align:center;font-size:.86rem;opacity:.65;margin:8px 0 0}
@media(min-width:900px){.nav-links{gap:14px}.nav-links a{font-size:.94rem}}


/* Contact / primary CTA text contrast */
a.btn-primary,
a.btn-primary:link,
a.btn-primary:visited,
a.btn-primary:hover,
a.btn-primary:active,
.btn-primary,
.btn-primary:link,
.btn-primary:visited,
.btn-primary:hover,
.btn-primary:active { color: #fff; }

.feature-photo-wrap{padding:12px 0 34px}.content-feature-photo{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:18px}
