
:root{--paper:#ffffff;--ink:#0c0d0d;--muted:#5c6a65;--brand:#1e7f5a;--brand-ink:#0b3b2a;--ghost:#f3f9f6;--radius:16px}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f7faf9 0%,#eef5f1 100%);line-height:1.6}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.site-header{position:sticky;top:0;z-index:20;backdrop-filter:saturate(180%) blur(12px);background:rgba(255,255,255,.85);display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #e6eee9}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:800}
.nav a{margin-left:18px;text-decoration:none;color:var(--ink);font-weight:600}.nav a.btn{margin-left:22px}
.btn{display:inline-block;border-radius:12px;padding:12px 16px;border:1px solid var(--brand);background:var(--brand);color:#fff;font-weight:700;text-decoration:none;cursor:pointer}
.btn:hover{filter:brightness(.98)}.btn-outline{background:transparent;color:var(--brand-ink);border-color:var(--brand-ink)}.btn-small{padding:8px 12px;font-size:14px}
.hero{position:relative;min-height:56vh;display:grid;place-items:center;background:url('assets/exterior.jpg') center/cover no-repeat}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,59,42,.55),rgba(11,59,42,.25))}
.hero-inner{position:relative;z-index:1;text-align:center;color:#fff;padding:40px 20px}
.hero h1{font-size:clamp(28px,5vw,46px);line-height:1.1;margin:0 0 12px}
.hero p{max-width:760px;margin:0 auto 18px;color:#ecfff6}
.trust-badges{display:flex;gap:12px;justify-content:center;list-style:none;padding:0;margin:12px 0 0;flex-wrap:wrap}
.trust-badges li{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:6px 10px;font-size:13px}
.section{padding:64px 0}.section.alt{background:#fbfdfc;border-top:1px solid #e6eee9;border-bottom:1px solid #e6eee9}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:18px}
.card{background:var(--paper);padding:20px;border:1px solid #e6eee9;border-radius:var(--radius);box-shadow:0 10px 18px -12px rgba(0,0,0,.08)}
.card h3{margin-top:0;color:var(--brand-ink)}
.prop-grid{display:grid;grid-template-columns:1fr;gap:20px}
.prop-card{display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:stretch;background:var(--paper);border:1px solid #e6eee9;border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 18px -12px rgba(0,0,0,.08)}
.prop-photo{min-height:240px;background:#ddd center/cover no-repeat}.prop-body{padding:20px}.prop-list{margin:10px 0 16px 20px}
.prop-ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:14px}
.gallery a{display:block;border-radius:12px;overflow:hidden;border:1px solid #e6eee9}
.gallery img{display:block;width:100%;height:180px;object-fit:cover;transition:transform .3s}
.gallery a:hover img{transform:scale(1.03)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}
.modal.open{display:flex}.modal-content{max-width:min(96vw,1100px);max-height:90vh;border-radius:16px;overflow:hidden;background:#000}
.modal-content img{display:block;max-width:100%;height:auto}
.about-hero{padding:72px 0;background:linear-gradient(180deg,#eaf7f1 0%,#f8fbf9 100%)}
.about-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}
.aside .info-block{background:var(--paper);border:1px solid #e6eee9;border-radius:var(--radius);padding:16px;margin-bottom:14px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.fact{background:var(--ghost);border:1px solid #d9ece3;border-radius:12px;padding:10px;text-align:center}
.fact span{display:block;font-weight:800;color:var(--brand-ink);font-size:20px}.fact small{color:var(--muted)}
.contact{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}
#contact-form .grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
label span{display:block;font-weight:700;margin-bottom:6px}
input,textarea{width:100%;padding:12px;border:1px solid #d6e6de;border-radius:10px;font:inherit;background:#fff}textarea{resize:vertical}
.fineprint{font-size:12px;color:var(--muted)}
.site-footer{padding:28px 20px;color:var(--muted)}.site-footer .container{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.footer-nav a{margin-left:14px;color:var(--muted);text-decoration:none}
@media (max-width:900px){.prop-card{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr}.contact{grid-template-columns:1fr}#contact-form .grid{grid-template-columns:1fr}}
