:root{--blue:#1e3a8a;--blue2:#1d4ed8;--blue3:#3b82f6;--sky:#eaf2fd;--ink:#0f172a;--mut:#475569;--line:#dbe5f2;--wa:#16a34a;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",system-ui,-apple-system,Helvetica,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
img{max-width:100%;height:auto;display:block}a{color:var(--blue2)}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgba(30,58,138,.06)}
.hdr-in{display:flex;align-items:center;gap:18px;height:66px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;color:var(--blue);text-decoration:none;white-space:nowrap}
.logo small{font-weight:600;color:var(--blue3)}
.logo-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;font-weight:900}
.nav{display:flex;gap:4px;margin-left:auto;flex-wrap:nowrap;overflow-x:auto}
.nav a{padding:8px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:.92rem;white-space:nowrap}
.nav a:hover,.nav a.on{background:var(--sky);color:var(--blue)}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:8px;font-size:1.2rem;padding:4px 10px;color:var(--blue)}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff;padding:12px 20px;border-radius:999px;text-decoration:none;font-weight:700;border:0;cursor:pointer;transition:.15s}
.btn:hover{background:var(--blue2);transform:translateY(-1px)}
.btn-wa{background:var(--wa)}.btn-wa:hover{background:#15803d}
.btn-white{background:#fff;color:var(--blue)}.btn-white:hover{background:var(--sky)}
.btn-sm{padding:8px 14px;font-size:.9rem;white-space:nowrap}
.hero{position:relative;background-color:var(--blue);background-size:cover;background-position:center;color:#fff}
.hero-in{min-height:560px;display:flex;align-items:center;padding:60px 20px}
.hero-txt{max-width:640px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#bfdbfe;font-weight:700}
.hero h1{font-size:clamp(2rem,4.5vw,3.3rem);line-height:1.1;margin:.2em 0 .4em}.hero h1 span{color:#93c5fd}
.lead{font-size:1.12rem;opacity:.95}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.hero-stats{display:flex;gap:28px;list-style:none;padding:0;margin:20px 0 0;flex-wrap:wrap}.hero-stats b{display:block;font-size:1.6rem}
.hero-stats li{font-size:.9rem;color:#dbeafe}
.sec{padding:64px 20px}.sec-h{font-size:2rem;color:var(--blue);margin:0 0 6px}.sec-sub{color:var(--mut);margin:0 0 26px}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px}
.ccard{border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--line);text-decoration:none;color:inherit;box-shadow:0 6px 24px rgba(30,58,138,.08);transition:.2s}
.ccard:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(30,58,138,.16)}
.ccard img{aspect-ratio:16/9;object-fit:cover;width:100%}.ccard-b{padding:18px 20px}.ccard h3{margin:0 0 4px;color:var(--blue);font-size:1.3rem}.ccard p{margin:0 0 10px;color:var(--mut)}
.ccard-n{font-weight:700;color:var(--blue2)}
.tiers{background:var(--sky);padding:60px 0}.tiers-in{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tier{background:#fff;border-radius:var(--r);padding:28px;border:1px solid var(--line)}.tier-p{background:linear-gradient(135deg,var(--blue),#1e40af);color:#fff;border:0}
.tier h3{font-size:1.5rem;margin:10px 0}.tier ul{padding-left:18px}.tier a{font-weight:700}.tier-p a{color:#bfdbfe}
.tag{display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.tag-budget{background:#fff;color:var(--blue);border:1.5px solid var(--blue)}.tag-premium{background:var(--blue);color:#fff;border:1.5px solid #fff}
.tag-cat{background:var(--sky);color:var(--blue)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.mcard{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:inherit;background:#fff;transition:.18s}
.mcard:hover{border-color:var(--blue3);box-shadow:0 10px 28px rgba(30,58,138,.14);transform:translateY(-3px)}
.mcard-img{position:relative;background:var(--sky)}.mcard-img img{aspect-ratio:3/2;object-fit:cover;width:100%}
.mcard-img .tag{position:absolute;top:10px;left:10px}
.mcard-body{padding:12px 16px 16px}.mcard-cat{font-size:.78rem;color:var(--blue3);font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.mcard h3{margin:2px 0 4px;font-size:1.08rem;color:var(--blue)}.mcard p{margin:0;color:var(--mut);font-size:.9rem}
.steps{padding:60px 0}.step-l{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;list-style:none;padding:0;counter-reset:s}
.step-l li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;counter-increment:s}
.step-l li::before{content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800;margin-bottom:10px}
.step-l b{display:block;color:var(--blue);font-size:1.1rem}.step-l span{color:var(--mut)}
.cta{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;padding:48px 0}.cta-in{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.cta h2{margin:0}
.center{text-align:center;margin-top:28px}
.phero{background:linear-gradient(135deg,#1e3a8a,#1d4ed8);background-size:cover;background-position:center;color:#fff;padding:56px 0 48px}
.phero h1{margin:.2em 0;font-size:2.4rem}.phero .crumbs,.phero .crumbs a{color:#dbeafe}.count{color:#dbeafe}
.crumbs{font-size:.88rem;color:var(--mut)}.crumbs a{text-decoration:none}
.catalog{padding-top:24px;padding-bottom:60px}
.filters{display:flex;gap:14px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:22px;position:sticky;top:76px;z-index:20;box-shadow:0 4px 18px rgba(30,58,138,.06)}
.filters label{font-size:.88rem;color:var(--mut);display:flex;gap:8px;align-items:center}
.filters select,.filters input{border:1px solid var(--line);border-radius:10px;padding:9px 12px;font:inherit;color:var(--ink)}
.filters input{flex:1;min-width:180px}
.seg{display:flex;border:1px solid var(--blue);border-radius:999px;overflow:hidden}.seg button{border:0;background:#fff;color:var(--blue);padding:8px 16px;font-weight:700;cursor:pointer}
.seg button.on{background:var(--blue);color:#fff}
.empty{text-align:center;color:var(--mut);padding:40px}
.detail{padding-top:20px;padding-bottom:60px}.d-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin:6px 0 18px}
.d-head h1{margin:8px 0 2px;color:var(--blue);font-size:2.3rem}.d-key{margin:0;color:var(--mut);font-size:1.05rem}
.gallery{display:grid;grid-template-columns:1fr 210px;gap:14px}.g-main{margin:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--sky)}
.g-main img{width:100%;aspect-ratio:3/2;object-fit:contain;background:#fff}
.g-thumbs{display:flex;flex-direction:column;gap:10px}.g-t{border:2px solid var(--line);border-radius:10px;padding:0;background:#fff;cursor:pointer;overflow:hidden;text-align:left}
.g-t.on{border-color:var(--blue2)}.g-t img{aspect-ratio:3/2;object-fit:cover;width:100%}.g-t span{display:block;font-size:.78rem;padding:4px 8px;color:var(--blue);font-weight:600}
.d-grid{display:grid;grid-template-columns:1fr 360px;gap:36px;margin-top:30px}.d-main h2{color:var(--blue);margin:28px 0 10px}.d-main h2:first-child{margin-top:0}
.d-text{font-size:1.08rem}.feats{columns:2;padding-left:18px}.feats li{margin-bottom:6px}
.chip{display:inline-block;background:var(--sky);color:var(--blue);border-radius:999px;padding:5px 12px;margin:0 6px 6px 0;font-weight:600;font-size:.9rem}
.plan{border:1px solid var(--line);border-radius:var(--r);width:100%}
table{border-collapse:collapse;width:100%}.rooms{margin-bottom:16px;font-size:.94rem}.rooms th,.rooms td{border-bottom:1px solid var(--line);padding:7px 8px;text-align:left}
.rooms thead th{background:var(--sky);color:var(--blue)}.rooms td:nth-child(n+2){white-space:nowrap}
.d-side .box{border:1px solid var(--line);border-radius:var(--r);padding:20px;margin-bottom:18px;position:relative}
.d-side h3{margin:0 0 10px;color:var(--blue)}.spec th,.spec td{padding:7px 4px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.92rem}.spec th{color:var(--mut);font-weight:600;width:48%}
.box-blue{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;border:0!important}.box-blue h3{color:#fff}
.note{font-size:.82rem;color:var(--mut)}.rel-h{color:var(--blue);margin-top:50px}
.ftr{background:#0f2460;color:#dbeafe;padding:44px 0 0;margin-top:0}.ftr-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.ftr h4{color:#fff;margin:0 0 10px}
.ftr a{display:block;color:#bfdbfe;text-decoration:none;margin-bottom:6px}.logo-w{color:#fff}.muted{color:#93c5fd;font-size:.9rem}
.ftr-bot{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding:16px 20px;font-size:.82rem;color:#93c5fd}
.wa-float{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;background:var(--wa);color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:60}
.wa-float svg{width:30px;height:30px}
@media (max-width:1050px){.nav{display:none;position:absolute;top:66px;left:0;right:0;background:#fff;flex-direction:column;padding:10px;border-bottom:1px solid var(--line)}.nav-open .nav{display:flex}.menu-btn{display:block}
.d-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.g-thumbs{flex-direction:row;overflow-x:auto}.g-t{min-width:140px}.step-l{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.tiers-in{grid-template-columns:1fr}.ftr-in{grid-template-columns:1fr}.feats{columns:1}.hdr .btn-sm span{display:none}.filters{position:static}.hero-in{min-height:480px}.step-l{grid-template-columns:1fr}}
.g-main img.photo{object-fit:cover}.g-note{margin:8px 0 0;font-size:.82rem}
.gallery{align-items:start}
/* prijzen ($440/m²) + Facebook */
.mcard-prijs{margin:8px 0 0;display:flex;align-items:baseline;gap:6px}.mcard-prijs span{font-size:.78rem;color:var(--mut)}.mcard-prijs b{font-size:1.25rem;color:var(--blue)}
.d-prijs{margin:8px 0 0;font-size:1.05rem;color:var(--mut)}.d-prijs b{font-size:1.7rem;color:var(--blue);margin:0 4px}.d-prijs small{display:block;font-size:.85rem}
.prijs-note{font-size:.88rem;color:var(--mut);margin:0 0 14px}
.hero-prijs{margin:14px 0 0;color:#dbeafe;font-size:.95rem}
.ftr-prijs{margin-top:22px;font-size:.88rem;color:#dbeafe}.ftr-prijs a{color:#fff;text-decoration:underline}
.fb-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;color:#1877f2;flex:none}.fb-link:hover{background:#eff6ff}
