:root{--bg:#f6f5f2;--card:#fff;--text:#1d2733;--muted:#5f6b78;--line:#e3e1dc;--brand:#0e3a5f;--brand2:#1d6fa5;--accent:#f07d00;--accent2:#d96f00;
--ok:#2f8f5b;--good:#6aa84f;--warn:#d4a017;--orange:#e07a1f;--bad:#b23a48;--radius:10px;--shadow:0 1px 2px rgba(20,30,50,.06),0 6px 20px rgba(20,30,50,.06);
--hero1:#0e3a5f;--hero2:#16507f;--on-accent:#fff;--photo1:#dfe8f0;--photo2:#c9d8e6}
@media (prefers-color-scheme:dark){:root{--bg:#0f141a;--card:#171e26;--text:#e7ecf1;--muted:#97a3b0;--line:#29333f;--brand:#7fb3e6;--brand2:#8fc1ef;--accent:#ff9124;--accent2:#ff9f40;
--hero1:#0a2440;--hero2:#103458;--photo1:#1d2a38;--photo2:#243446}}
*{box-sizing:border-box}
body{margin:0;font:15px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);overflow-x:clip}
a{color:var(--brand2)}h1{font-size:1.7rem;margin:.2em 0}h2{font-size:1.15rem;margin:.2em 0 .6em}h3{font-size:1rem}
.wrap{max-width:1180px;margin:0 auto;padding:16px}
.hdr{display:flex;align-items:center;gap:16px;padding:10px 20px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:500;flex-wrap:wrap}
.brand{font-weight:700;font-size:1.15rem;text-decoration:none;color:var(--brand);display:flex;align-items:center;gap:6px}
.logo{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--brand);color:#fff}
.nav{display:flex;gap:14px;flex:1;flex-wrap:wrap}.nav a{text-decoration:none;color:var(--text);font-weight:500}.nav a:hover{color:var(--brand2)}
.hdr-right{display:flex;gap:8px;align-items:center}
select,input,textarea{font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px 10px;width:100%}
input[type=checkbox],input[type=radio]{width:auto}input[type=range]{padding:0}
label{display:block;font-size:.88rem;font-weight:500;margin-bottom:10px}label>input,label>select,label>textarea{margin-top:4px}
label.check{display:flex;gap:8px;align-items:center;margin-top:24px}
.btn{display:inline-block;background:var(--brand);color:#fff;border:0;border-radius:8px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;text-align:center}
.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.6;cursor:wait}
.btn.ghost{background:transparent;color:var(--brand2);border:1px solid var(--line)}.btn.danger{color:var(--bad)}.btn.danger:not(.ghost){background:var(--bad);color:#fff}
.btn.sm{padding:5px 10px;font-size:.85rem}.btn.lg{padding:12px 26px;font-size:1.05rem}.btn.wide{width:100%}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-bottom:16px;box-shadow:var(--shadow)}
.card.narrow{max-width:440px;margin:40px auto}.card.warn{border-color:var(--warn)}.card.error,.error{color:var(--bad)}.card.ok{border-color:var(--ok)}
.muted{color:var(--muted)}.small{font-size:.85rem}.hidden{display:none!important}.r{text-align:end}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}.grid2>.card{margin-bottom:0}.grid2+.grid2,.grid2+.card,.card+.grid2{margin-top:16px}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:4px 16px}.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:4px 16px}
.hero{text-align:center;padding:48px 16px 24px}.hero h1{font-size:2.3rem}.lead{font-size:1.1rem;color:var(--muted)}
.search{position:relative;max-width:620px;margin:20px auto 8px}.search input{font-size:1.1rem;padding:14px 16px;border-radius:12px;box-shadow:var(--shadow)}
.suggest{position:absolute;left:0;right:0;top:100%;background:var(--card);border:1px solid var(--line);border-radius:10px;list-style:none;margin:4px 0;padding:4px;text-align:start;z-index:50;box-shadow:var(--shadow)}
.suggest li{padding:8px 10px;border-radius:6px;cursor:pointer}.suggest li:hover{background:var(--bg)}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:24px 0}
.feature{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.feature h3{margin:0 0 6px;color:var(--brand)}
.pill{display:inline-block;padding:3px 10px;border-radius:99px;background:var(--bg);border:1px solid var(--line);font-size:.8rem;text-decoration:none;color:var(--text)}
.pill.ok{border-color:var(--ok);color:var(--ok)}.pill.warn{border-color:var(--warn);color:var(--warn)}
.badge{background:var(--bad);color:#fff;border-radius:99px;padding:0 6px;font-size:.72rem;margin-inline-start:4px}
.banner{background:var(--warn);color:#000;text-align:center;padding:6px}
.page-head{margin:12px 0 16px}.page-head.row{display:flex;justify-content:space-between;align-items:center}
.seg{display:flex;gap:16px;margin-bottom:12px}.seg label{display:flex;gap:6px;align-items:center}
fieldset{border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin:0 0 14px}legend{font-weight:600;padding:0 6px}
.actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.actions.sticky{position:sticky;bottom:0;background:var(--bg);padding:12px 0;border-top:1px solid var(--line)}
.work-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.work-row input{flex:1}
output{float:inline-end;color:var(--muted)}
details{margin-top:10px}summary{cursor:pointer;font-weight:600;color:var(--brand2)}
table{border-collapse:collapse;width:100%}.parts td,.parts th{padding:4px}.parts input,.parts select{padding:6px}
.kv th{text-align:start;font-weight:400;color:var(--muted);padding:5px 0}.kv td{text-align:end;padding:5px 0;font-variant-numeric:tabular-nums}
.kv tr.total th,.kv tr.total td{border-top:2px solid var(--line);font-weight:700;color:var(--text);padding-top:8px}.kv tr.sub td{font-weight:600}
.data th,.data td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:start}.data.num td{text-align:end;font-variant-numeric:tabular-nums}.data.num td:first-child{text-align:start}
.data thead th{font-size:.8rem;color:var(--muted);font-weight:600;position:sticky;top:0;background:var(--card)}
.pos{color:var(--ok)}.neg{color:var(--bad)}.scroll{overflow:auto;max-height:460px}
.report-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:8px 0 16px}.crumbs{margin:0;font-size:.85rem}
.report-actions{display:flex;gap:8px;align-items:flex-start}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.chip{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:6px 12px;display:flex;flex-direction:column}
.chip small{color:var(--muted);font-size:.72rem}.chip b{font-size:1rem}
.scores{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:16px}
.gauge{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px;text-align:center;box-shadow:var(--shadow)}
.gauge svg{width:120px;height:120px}.g-bg{fill:none;stroke:var(--line);stroke-width:10}.g-fg{fill:none;stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset .6s}
.g-num{font-size:30px;font-weight:700;fill:var(--text)}.g-of{font-size:12px;fill:var(--muted)}.g-label{font-weight:600}.g-sub{color:var(--muted);font-size:.85rem}
.warnings ul{margin:0;padding-inline-start:20px}.warnings li{margin:4px 0}.warnings{border-inline-start:4px solid var(--warn)}
.tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:16px}
.tab{background:none;border:0;padding:10px 14px;font:inherit;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent}
.tab.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}
.tabpane{display:none}.tabpane.active{display:block}
.map{height:340px;border-radius:10px;overflow:hidden;z-index:1}
.bars{display:flex;flex-direction:column;gap:10px}.bar-row{display:grid;grid-template-columns:150px 1fr 36px;gap:10px;align-items:center}
.bar{height:10px;background:var(--line);border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;border-radius:99px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:16px}
.acard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-decoration:none;color:var(--text);box-shadow:var(--shadow)}
.acard:hover{border-color:var(--brand2)}.acard h3{margin:0 0 4px}
.mini-scores{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.mini-scores span{border-inline-start:4px solid var(--c);padding-inline-start:8px}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.plan{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;text-align:center}.plan .price{font-size:1.8rem;font-weight:700;color:var(--brand);margin:8px 0}
.msgs{list-style:none;padding:0;margin:0}.msg{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px}
.msg.unread{border-inline-start:4px solid var(--brand2)}.msg.to_admin{background:var(--bg)}.msg-h{display:flex;justify-content:space-between;gap:8px}
.sources{display:flex;gap:6px;flex-wrap:wrap}
.spinner{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite;margin:12px auto}
@keyframes spin{to{transform:rotate(360deg)}}.loading{text-align:center;padding:40px;color:var(--muted)}
#toasts{position:fixed;bottom:16px;inset-inline-end:16px;display:flex;flex-direction:column;gap:8px;z-index:9999}
.toast{background:var(--text);color:var(--bg);padding:10px 16px;border-radius:8px;box-shadow:var(--shadow)}.toast.error{background:var(--bad);color:#fff}.toast.ok{background:var(--ok);color:#fff}
.ftr{text-align:center;padding:30px 16px}.disclaimer{margin-top:20px}.how ol{padding-inline-start:20px}.empty{text-align:center}
#narr h2,#narr h3,#narr h4{margin-top:1em;color:var(--brand)}
@media (max-width:640px){.hero h1{font-size:1.7rem}.bar-row{grid-template-columns:110px 1fr 30px}.nav{order:3;width:100%}}
@media print{.hdr,.ftr,.no-print,.tabs,#banner{display:none!important}.tabpane{display:block!important;page-break-inside:avoid}body{background:#fff}.card,.gauge{box-shadow:none}}
/* Admin */
.admin{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.side{background:var(--card);border-inline-end:1px solid var(--line);padding:16px}
.side a{display:block;padding:8px 10px;border-radius:8px;color:var(--text);text-decoration:none;margin-bottom:2px}.side a.active,.side a:hover{background:var(--bg);color:var(--brand)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.kpi small{color:var(--muted)}.kpi b{display:block;font-size:1.5rem}
.set-row{display:grid;grid-template-columns:260px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);align-items:start}
.set-row code{font-size:.8rem}.verify{color:var(--warn);font-size:.75rem;font-weight:600}
textarea.json{font-family:ui-monospace,Menlo,monospace;font-size:.82rem}
.chat{max-height:360px;overflow:auto;display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.bubble{padding:8px 12px;border-radius:10px;max-width:80%}.bubble.to_user{background:var(--brand);color:#fff;align-self:flex-end}.bubble.to_admin{background:var(--bg);border:1px solid var(--line)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:grid;place-items:center;z-index:1000;padding:16px}.modal>.card{max-width:980px;width:100%;max-height:90vh;overflow:auto}
@media (max-width:800px){.admin{grid-template-columns:1fr}.set-row{grid-template-columns:1fr}}
.admin>main.wrap{margin:0;max-width:none;width:100%;min-width:0;padding:20px 28px}
.hdr .pill{white-space:nowrap}.hdr-right .btn{white-space:nowrap}

/* v1.1 */
.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:12px 0}
.tier{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:4px;background:var(--bg)}
.tier.sel{border:2px solid var(--brand);background:var(--card)}.tier>b{font-size:1.5rem}
.sub{border-bottom:1px solid var(--line);padding:10px 0;list-style:none}.sub:last-child{border:0}
.lvl-high{border-color:var(--bad);color:var(--bad)}.lvl-medium{border-color:var(--orange);color:var(--orange)}.lvl-low{border-color:var(--muted);color:var(--muted)}
.checklist{list-style:none;padding:0;margin:0}.checklist .check{margin-top:6px;font-weight:400}
tr.dim td{opacity:.6}.qty input{width:80px;display:inline-block}
.labelbar{display:flex;gap:3px;margin:8px 0 12px}.lb{flex:1;text-align:center;padding:6px 0;border-radius:6px;color:#fff;font-weight:700;font-size:.8rem;opacity:.35}
.lb.cur{opacity:1;outline:3px solid var(--text)}.lb.est{opacity:1;outline:3px dashed var(--brand2)}
.lb-G{background:#d7191c}.lb-F{background:#e8601c}.lb-E{background:#f39c12}.lb-D{background:#f1c40f;color:#333}.lb-C{background:#c8d400;color:#333}.lb-B{background:#7ab800}.lb-A,.lb-Ap,.lb-App{background:#2f8f5b}
.mon .chips{margin:8px 0}
.xscroll{overflow-x:auto}
@media (max-width:640px){
  .tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab{white-space:nowrap;flex:0 0 auto}
  .nav{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;padding-bottom:2px}
  .parts{display:block;overflow-x:auto}.parts input,.parts select{min-width:104px}
  .report-actions{flex-wrap:wrap}.tier>b{font-size:1.3rem}
}

/* v1.2 rental */
form[data-mode=rent] .only-buy,form[data-mode=buy] .only-rent{display:none!important}
.modeswitch{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:14px;background:var(--card)}
.modeswitch button{border:0;background:none;padding:10px 22px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}.modeswitch button.on{background:var(--brand);color:#fff}

/* v1.3 dossier & letters */
.meter{height:10px;border-radius:99px;background:var(--bg);border:1px solid var(--line);overflow:hidden}.meter i{display:block;height:100%;background:var(--ok);transition:width .3s}
.doclist{list-style:none;padding:0;margin:0}.doclist li{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}.doclist li:last-child{border-bottom:0}
.doclist li>div{flex:1;min-width:0}.doclist select.st{width:auto;min-width:130px;flex:none}.st-ready{border-color:var(--ok)!important;color:var(--ok)}.st-requested{border-color:var(--warn)!important;color:var(--warn)}
.scr-ref{margin-top:6px}#lbody{font-family:inherit;line-height:1.5}
@media(max-width:640px){.doclist li{flex-direction:column}.doclist select.st{width:100%}}

/* ── v1.4 Dutch property-portal theme ───────────────────────────── */
h1,h2,h3{letter-spacing:-.01em;color:var(--text)}h1{font-weight:800}
.btn{background:var(--accent);color:var(--on-accent);border-radius:6px}.btn:hover{background:var(--accent2);filter:none}
.btn.ghost{background:var(--card);color:var(--brand);border:1px solid var(--line)}.btn.ghost:hover{border-color:var(--brand2);background:var(--card)}
.btn.blue{background:var(--brand);color:#fff}
.hdr{padding:0 24px;min-height:64px;gap:24px;box-shadow:0 1px 0 var(--line)}
.brand{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;color:var(--brand)}.brand b{color:var(--accent);font-weight:800}
.brand svg{width:34px;height:34px;flex:none}
.nav{gap:4px}.nav a{padding:21px 10px;border-bottom:3px solid transparent;font-weight:600;font-size:.94rem}
.nav a:hover,.nav a.on{color:var(--brand);border-bottom-color:var(--accent)}
#lang{width:auto;padding:6px 8px;border-radius:6px}
/* hero */
.hero-band{position:relative;margin:-16px calc(50% - 50vw) 0;padding:64px 16px 150px;background:linear-gradient(160deg,var(--hero1),var(--hero2));color:#fff;overflow:hidden}
.hero-band::after{content:"";position:absolute;inset:auto 0 0 0;height:210px;background:url(/img/skyline.svg) bottom center/auto 100% repeat-x;pointer-events:none}
.hero-inner{position:relative;z-index:1;max-width:820px;margin:0 auto;text-align:center}
.hero-band h1{color:#fff;font-size:2.6rem;line-height:1.15;margin:0 0 12px}.hero-band .lead{color:rgba(255,255,255,.85);max-width:680px;margin:0 auto 26px}
.search-card{background:var(--card);color:var(--text);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.25);text-align:start;overflow:visible}
.search-tabs{display:flex;border-bottom:1px solid var(--line)}
.search-tabs button{flex:1;background:none;border:0;padding:14px 10px;font:inherit;font-weight:700;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}
.search-tabs button.on{color:var(--brand);border-bottom-color:var(--accent)}
.search-card .search{margin:0;padding:16px;max-width:none;display:flex;gap:10px}.search-card .search input{box-shadow:none;border-radius:6px;font-size:1.05rem}
.search-card .search .btn{flex:none;padding:0 22px}.search-card .suggest{left:16px;right:16px}
.search-card .alt{padding:0 16px 14px;margin:0}
.hero-note{color:rgba(255,255,255,.8);font-size:.9rem;margin-top:14px}
.trust{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center;padding:18px 0 4px;color:var(--muted);font-size:.85rem}.trust b{color:var(--text)}
.section{margin:40px 0}.section-title{font-size:1.5rem;margin-bottom:4px}.section-sub{color:var(--muted);margin:0 0 18px}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.section-head>div>*{margin:0}
.feature{display:flex;gap:14px;align-items:flex-start;border-radius:var(--radius)}.feature h3{color:var(--text)}.feature p{margin:0;color:var(--muted);font-size:.93rem}
.ficon{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-size:1.3rem}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;counter-reset:st;list-style:none;padding:0}
.steps li{counter-increment:st;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 18px 64px;position:relative}
.steps li::before{content:counter(st);position:absolute;left:18px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:800}
[dir=rtl] .steps li{padding:18px 64px 18px 18px}[dir=rtl] .steps li::before{left:auto;right:18px}
/* listing cards */
.cards{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.acard{padding:0;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s,transform .15s}
.acard:hover{box-shadow:0 10px 28px rgba(20,30,50,.14);transform:translateY(-2px);border-color:var(--line)}
.photo{position:relative;aspect-ratio:16/10;background:linear-gradient(180deg,var(--photo1),var(--photo2));display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.photo svg{width:62%;height:auto;display:block}
.photo .tag{position:absolute;top:10px;inset-inline-start:10px;background:var(--brand);color:#fff;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}
.photo .tag.rent{background:var(--ok)}
.photo .lb{position:absolute;top:10px;inset-inline-end:10px;opacity:1;flex:none;padding:3px 9px;border-radius:4px 0 0 4px;clip-path:polygon(0 0,82% 0,100% 50%,82% 100%,0 100%);padding-inline-end:16px}
.abody{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px;flex:1}
.aprice{font-size:1.3rem;font-weight:800;color:var(--text)}.aprice small{font-size:.8rem;font-weight:500;color:var(--muted)}
.aaddr{font-weight:600;color:var(--brand2)}.ameta{display:flex;gap:12px;color:var(--muted);font-size:.86rem;flex-wrap:wrap}
.ascores{display:flex;gap:6px;margin-top:8px}.ascores span{flex:1;font-size:.75rem;color:var(--muted);border-top:4px solid var(--c);padding-top:4px}.ascores b{display:block;color:var(--text);font-size:.95rem}
.amak{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}
/* report head */
.price-big{font-size:2rem;font-weight:800;margin:4px 0 2px;color:var(--text)}.price-big small{font-size:.95rem;font-weight:500;color:var(--muted)}
.report-head h1{font-size:1.5rem;margin:2px 0}
.chip{border-radius:6px;background:var(--bg)}
.report-side{display:flex;flex-direction:column;gap:12px;align-items:stretch;min-width:260px}
.agent-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow)}
.agent-card small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:700}
.agent-row{display:flex;gap:12px;align-items:center;margin-top:6px}.agent-row a.n{font-weight:700;text-decoration:none;color:var(--brand)}
.avatar{flex:none;width:44px;height:44px;border-radius:8px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:800;letter-spacing:.02em}
.avatar.lg{width:72px;height:72px;font-size:1.5rem;border-radius:12px}
.mbadge{display:inline-block;font-size:.68rem;font-weight:800;padding:2px 6px;border-radius:4px;border:1px solid var(--brand2);color:var(--brand2);margin-inline-end:4px}
.vbadge{color:var(--ok);font-size:.8rem;font-weight:700}
/* makelaars directory */
.dir-search{display:grid;grid-template-columns:1fr 220px auto;gap:10px;margin-bottom:12px}
.city-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.city-chips a{text-decoration:none}.city-chips a.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.mcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.mcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;gap:14px;text-decoration:none;color:var(--text);box-shadow:var(--shadow)}
.mcard:hover{border-color:var(--brand2)}.mcard h3{margin:0;font-size:1.02rem;color:var(--brand)}.mcard p{margin:2px 0;font-size:.86rem;color:var(--muted)}
.mstat{display:flex;gap:14px;margin-top:6px;font-size:.82rem}.mstat b{color:var(--text)}
.mk-head{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.mk-contact{display:grid;gap:6px}.mk-contact a{word-break:break-all}
.pager{display:flex;gap:8px;justify-content:center;margin:20px 0}
/* agent fields on the analysis form */
.mk-fields{position:relative}.mk-sugg{top:auto}
/* footer */
.ftr{background:var(--hero1);color:rgba(255,255,255,.75);text-align:start;padding:36px 16px 20px;margin-top:48px}
.ftr .cols{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}
.ftr h4{color:#fff;margin:0 0 8px;font-size:.95rem}.ftr a{color:rgba(255,255,255,.85);text-decoration:none;display:block;padding:2px 0}.ftr a:hover{color:#fff}
.ftr .legal{max-width:1180px;margin:22px auto 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.15);font-size:.8rem}
.ftr .brand{color:#fff}
@media (max-width:640px){
  .hero-band{padding:40px 16px 120px}.hero-band h1{font-size:1.75rem}.hero-band::after{height:150px}
  .search-card .search{flex-direction:column}.search-card .search .btn{padding:10px}
  .dir-search{grid-template-columns:1fr}.nav a{padding:10px 8px}.hdr{padding:8px 16px;gap:10px}
  .report-side{min-width:0;width:100%}.price-big{font-size:1.6rem}
}
@media print{.ftr{display:none}}
.ftr .brand{display:inline;font-size:1.25rem}

/* v1.4.1 two-tier header + report layout */
.hdr{padding:0 24px;gap:0 24px;min-height:0}
.hdr .brand{padding:12px 0}.hdr-right{margin-inline-start:auto;padding:10px 0}
.hdr .nav{order:3;flex:1 0 100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;border-top:1px solid var(--line);margin:0 -24px;padding:0 14px;gap:2px}
.hdr .nav a{padding:11px 10px;white-space:nowrap;font-size:.92rem}
.report-head{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start}
.report-actions{flex-wrap:wrap}
@media (max-width:860px){.report-head{grid-template-columns:1fr}}
@media (max-width:640px){.hdr{padding:0 16px}.hdr .nav{margin:0 -16px;padding:0 6px}}
/* v1.5 email verification banner */
.verify-banner{background:color-mix(in srgb,var(--accent) 14%,var(--card));border-bottom:1px solid var(--line);color:var(--text);text-align:center;padding:10px 16px;display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap}

/* ── v1.6 visual landing page ───────────────────────────────────── */
.ic{width:1.15em;height:1.15em;vertical-align:-.2em;flex:none}
.center{text-align:center}.center .section-sub{max-width:640px;margin-inline:auto}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffd29a;margin-bottom:10px}
.eyebrow.dark{color:var(--accent)}
.hero-grid{position:relative;z-index:1;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
.hero-copy{text-align:start}.hero-copy h1{font-size:2.7rem}.hero-copy .lead{margin:0 0 24px;max-width:none}
.hero-note{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.hero-note a{color:#fff;font-weight:700}
.hero-visual{position:relative;padding:10px 20px 30px}
.preview{background:var(--card);color:var(--text);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.35);overflow:hidden;transform:rotate(1.2deg);max-width:400px;margin-inline-start:auto}
.pv-photo{position:relative;height:150px;background:linear-gradient(180deg,var(--photo1),var(--photo2));display:flex;justify-content:center;align-items:flex-end}
.pv-photo svg{height:130px;width:auto}.pv-photo .tag{position:absolute;top:10px;inset-inline-start:10px;background:var(--brand);color:#fff;font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:4px;text-transform:uppercase}
.pv-photo .lb{position:absolute;top:10px;inset-inline-end:10px;opacity:1;flex:none;padding:3px 16px 3px 9px;clip-path:polygon(0 0,82% 0,100% 50%,82% 100%,0 100%)}
.pv-body{padding:14px 18px 16px}.pv-body small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.06em}
.pv-price{font-size:1.5rem;font-weight:800}.pv-price span{font-size:.8rem;color:var(--muted);font-weight:500}.pv-addr{color:var(--brand2);font-weight:600;margin-bottom:6px}
.pv-gauges{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0}
.pv-gauges .gauge{padding:6px 2px;box-shadow:none;border:0;background:var(--bg)}.pv-gauges .gauge svg{width:62px;height:62px}.pv-gauges .g-label{font-size:.7rem;font-weight:600}
.pv-row{display:flex;justify-content:space-between;font-size:.88rem;padding:5px 0;border-top:1px solid var(--line)}
.float-chip{position:absolute;background:var(--card);color:var(--text);border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:700;box-shadow:0 10px 28px rgba(0,0,0,.25);display:flex;gap:6px;align-items:center}
.float-chip .ic{color:var(--ok)}.float-chip.c1{top:28px;inset-inline-start:-6px}.float-chip.c2{bottom:4px;inset-inline-start:30px}.float-chip.c2 .ic{color:var(--accent)}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:28px 0 6px;box-shadow:var(--shadow)}
.facts>div{background:var(--card);padding:16px;text-align:center}.facts b{display:block;font-size:1.8rem;font-weight:800;color:var(--brand)}.facts span{color:var(--muted);font-size:.86rem}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:20px}
.fcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.fcard:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(20,30,50,.12)}.fcard h3{margin:12px 0 6px}.fcard p{margin:0;color:var(--muted);font-size:.93rem}
.fcard .ficon{width:48px;height:48px;border-radius:12px;font-size:1.4rem}
.showcase{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin:56px 0}
.showcase.rev .sc-text{order:2}.showcase h2{font-size:1.7rem;margin:0 0 14px;line-height:1.2}
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:10px}.ticks li{display:flex;gap:10px;align-items:flex-start}.ticks .ic{color:var(--ok);margin-top:3px}
.viz-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 14px 40px rgba(20,30,50,.10)}
.viz-tag{position:absolute;top:14px;inset-inline-end:14px;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:2px 6px}
.viz-title{font-weight:800;margin-bottom:12px}
.stack{display:flex;height:22px;border-radius:6px;overflow:hidden;gap:2px;margin-bottom:12px}.stack i{display:block}
.legend{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:.88rem}.legend li{display:flex;align-items:center;gap:8px}.legend li b{margin-inline-start:auto;font-variant-numeric:tabular-nums}
.legend span{width:10px;height:10px;border-radius:3px;flex:none}.legend.inline{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px}
.viz-total,.viz-left{display:flex;justify-content:space-between;padding-top:8px;margin-top:8px;border-top:1px solid var(--line)}.viz-total b{font-size:1.1rem}.viz-left{border-top:0;margin-top:0}
.viz-svg{width:100%;height:auto;display:block}.viz-svg .ax{font-size:10px;fill:var(--muted)}
.viz-kv{display:grid;grid-template-columns:1fr auto;gap:4px 12px;font-size:.88rem;margin-top:10px}.viz-kv span{color:var(--muted)}
.map-svg .m-bg{fill:var(--photo1)}.map-svg .m-water{fill:#7fb3e6;opacity:.55}.map-svg .m-park{fill:#2f8f5b;opacity:.35}.map-svg .m-street{stroke:var(--card);stroke-width:5;opacity:.9}
.map-svg .m-radius{fill:var(--accent);opacity:.12;stroke:var(--accent);stroke-dasharray:4 4}
.flow{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:none}
.flow li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px 18px 18px;text-align:center;box-shadow:var(--shadow)}
.flow li:not(:last-child)::after{content:"";position:absolute;top:44px;inset-inline-end:-17px;width:18px;border-top:2px dashed var(--accent)}
.flow-ic{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand);font-size:1.5rem}
.flow-n{position:absolute;top:12px;inset-inline-start:14px;font-weight:800;color:var(--accent)}.flow li p{margin:12px 0 0;font-size:.93rem}
.pricing{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:36px 28px;box-shadow:var(--shadow)}
.seg-tabs{display:inline-flex;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:4px;margin:6px 0 22px}
.seg-tabs button{border:0;background:none;padding:8px 18px;border-radius:999px;font:inherit;font-weight:700;color:var(--muted);cursor:pointer}.seg-tabs button.on{background:var(--brand);color:#fff}
.plans-grid{display:grid;grid-template-columns:minmax(220px,.8fr) 3fr;gap:16px;align-items:stretch}
.plans-sub{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.plan{position:relative;display:flex;flex-direction:column;gap:4px;text-align:start;border-radius:14px;padding:22px}.plan h3{margin:0;font-size:1.02rem}.plan .price{margin:6px 0 0;font-size:2rem;font-weight:800;color:var(--text)}
.plan .per{color:var(--muted);font-size:.85rem}.plan p{flex:1;margin:10px 0 14px;font-size:.9rem}.plan .btn{margin-top:auto}
.plan.best{border:2px solid var(--accent);box-shadow:0 12px 30px rgba(240,125,0,.18)}
.ribbon{position:absolute;top:-11px;inset-inline-start:18px;background:var(--accent);color:#fff;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 10px;border-radius:999px}
.plan.free{background:var(--bg)}.plan.free .ticks{margin:12px 0 16px;font-size:.9rem;flex:1}
.price-notes{display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;color:var(--muted);font-size:.85rem;margin:20px 0 0}.price-notes .ic{color:var(--ok)}
.plans-h{margin:22px 0 12px;font-size:1.15rem}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:10px auto 0;max-width:820px}
.faq summary{color:var(--text);font-weight:700}.faq details p{margin:10px 0 0;color:var(--muted)}
.cta-band{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:linear-gradient(135deg,var(--hero1),var(--hero2));color:#fff;border-radius:18px;padding:30px 34px;margin:40px 0 8px}
.cta-band h2{color:#fff;margin:0 0 4px}.cta-band p{margin:0;color:rgba(255,255,255,.85)}
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr}.hero-visual{display:none}.hero-copy{text-align:center}.hero-note{justify-content:center}
  .showcase,.showcase.rev{grid-template-columns:1fr;gap:20px;margin:36px 0}.showcase.rev .sc-text{order:0}
  .flow{grid-template-columns:repeat(2,1fr)}.flow li::after{display:none}.plans-grid{grid-template-columns:1fr}
}
@media (max-width:640px){.facts{grid-template-columns:repeat(2,1fr)}.hero-copy h1{font-size:1.8rem}.flow{grid-template-columns:1fr}.pricing{padding:24px 16px}.cta-band{padding:24px}}
.float-chip.c1{top:118px;inset-inline-start:-14px}.price-notes span{display:inline-flex;gap:6px;align-items:flex-start}
