{"id":27510,"date":"2025-04-11T21:13:21","date_gmt":"2025-04-11T21:13:21","guid":{"rendered":"https:\/\/zeas.immo\/?page_id=27510"},"modified":"2026-09-09T20:43:45","modified_gmt":"2026-09-09T20:43:45","slug":"acheter-un-bien-immobilier","status":"publish","type":"page","link":"https:\/\/zeas.immo\/fr\/buy-property\/","title":{"rendered":"Acheter une propri\u00e9t\u00e9 \u00e0 Hesperange"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"27510\" class=\"elementor elementor-27510\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b262ea3 e-flex e-con-boxed e-con e-parent\" data-id=\"b262ea3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9b8732f elementor-widget elementor-widget-html\" data-id=\"9b8732f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   DESIGN SYSTEM TOKENS \u2014 zeas-design-system.html v1.0\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n\/* All tokens come from css\/zeas-design-system.css *\/\n\n\/* dark mode disabled \u2014 always light *\/\n\n\/* \u2500\u2500 BASE \u2500\u2500 *\/\n*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\nhtml { scroll-behavior: smooth; scroll-padding-top: 0; }\n@media (max-width: 600px) {\n  .cards-2 { grid-template-columns: 1fr; }\n  .cards-3 { grid-template-columns: 1fr; } html { scroll-behavior: auto; } }\nbody {\n  font-family: var(--font-body);\n  color: var(--text-primary);\n  font-size: var(--text-base);\n  line-height: var(--lh-body);\n  -webkit-font-smoothing: antialiased;\n}\n.wrap {\n  max-width: var(--max-width);\n  margin: 0 auto;\n  padding-left: var(--page-pad);\n  padding-right: var(--page-pad);\n}\n.sp  { padding-top: 56px; padding-bottom: 56px; }\n.sps { padding-top: 80px; padding-bottom: 80px; }\na { color: inherit; text-decoration: none; }\n\n\/* \u2500\u2500 TYPOGRAPHY UTILITIES \u2500\u2500 *\/\n.eyebrow {\n  display: flex; align-items: center; gap: 12px;\n  font-family: var(--font-body);\n  font-size: var(--text-eyebrow); font-weight: var(--weight-semibold);\n  letter-spacing: var(--track-eyebrow); text-transform: uppercase;\n  color: var(--accent); margin-bottom: var(--space-sm);\n}\n.eyebrow::before, .eyebrow::after {\n  content: ''; width: 24px; height: 1px;\n  background: var(--accent); flex-shrink: 0;\n}\n.eyebrow.center { justify-content: center; }\n.stitle {\n  font-family: var(--font-display);\n  font-size: var(--h1);\n  font-weight: var(--weight-medium);\n  color: var(--text-primary);\n  line-height: var(--lh-tight);\n  letter-spacing: var(--track-tight);\n}\n.stitle.dk { color: var(--text-dark-primary); }\n.stitle.center { text-align: center; }\n.section-hd { text-align: center; margin-bottom: var(--space-xl); }\n.section-hd .stitle { margin-bottom: var(--space-xs); }\n.section-hd p {\n  font-size: var(--text-base); color: var(--text-secondary);\n  max-width: 500px; margin: 0 auto; line-height: var(--lh-relaxed);\n}\n\n\/* \u2500\u2500 BUTTONS \u2500\u2500 *\/\n.btn-primary {\n  display: inline-flex; align-items: center; gap: 10px;\n  background: var(--accent); color: #fff;\n  padding: 15px 38px;\n  font-family: var(--font-body); font-size: var(--text-base);\n  font-weight: var(--weight-medium); letter-spacing: var(--track-wide);\n  text-decoration: none; border: none; cursor: pointer;\n  transition: background var(--dur-base), transform var(--dur-fast);\n}\n.btn-primary:hover { background: var(--accent-hover); transform: translateY(-2px); }\n.btn-primary svg { width: 16px; height: 16px; transition: transform var(--dur-base); flex-shrink: 0; }\n.btn-primary:hover svg { transform: translateX(4px); }\n.btn-ghost-dark {\n  display: inline-flex; align-items: center; gap: 10px;\n  padding: 10px 32px; border: 1px solid var(--surface-dark) !important;\n  font-family: var(--font-body); font-size: var(--text-sm);\n  font-weight: var(--weight-medium); letter-spacing: var(--track-wide);\n  color: var(--surface-dark) !important; text-decoration: none !important; white-space: nowrap;\n  transition: border-color 220ms, background 220ms, color 220ms;\n}\n.btn-ghost-dark:hover { border-color: var(--accent) !important; background: var(--accent) !important; color: #fff !important; }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   1. HERO \u2014 dark, centered\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.hero {\n  background: var(--surface-dark);\n  position: relative; overflow: hidden; text-align: center;\n}\n.hero::after {\n  content: ''; position: absolute; inset: 0; pointer-events: none;\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.035'\/%3E%3C\/svg%3E\");\n}\n.hero-body {\n  position: relative; z-index: 1;\n  display: flex; flex-direction: column; align-items: center;\n  \/* CHANGED: 72px \u2192 96px *\/\n  padding-top: 96px; padding-bottom: var(--space-xl);\n}\n.hero h1 {\n  font-family: var(--font-display);\n  font-size: var(--text-display);\n  font-weight: var(--weight-medium); line-height: var(--lh-tight);\n  letter-spacing: var(--track-tight);\n  color: var(--text-dark-primary);\n  \/* CHANGED: var(--space-md) 24px \u2192 var(--space-lg) 40px *\/\n  margin-bottom: var(--space-lg);\n  max-width: 780px;\n}\n.hero h1,\n.hero h1 span,\n.hero h1 em {\n  white-space: normal !important;\n  overflow-wrap: break-word;\n  word-break: normal;\n}\n.hero h1 span,\n.hero h1 em {\n  display: inline;\n}\n.hero h1 em { font-style: italic; color: var(--accent); }\n.hero-sub {\n  font-size: var(--text-base); font-weight: var(--weight-body);\n  color: var(--text-dark-secondary);\n  line-height: var(--lh-relaxed); max-width: 720px;\n  margin: 0 auto var(--space-lg);\n}\n.hero-cta-row {\n  display: flex; align-items: center;\n  justify-content: center; gap: var(--space-md);\n  flex-wrap: wrap;\n}\n.hero-link {\n  font-size: var(--text-sm); font-weight: var(--weight-body);\n  color: var(--text-dark-body);\n  border-bottom: 1px solid rgba(200,196,190,0.25);\n  padding-bottom: 2px;\n  transition: color var(--dur-base), border-color var(--dur-base);\n}\n.hero-link:hover { color: #fff; border-color: rgba(255,255,255,0.4); }\n\n\/* Stat bar \u2014 CHANGED: now sits outside .wrap, full-bleed *\/\n.stat-bar {\n  position: relative; z-index: 1;\n  display: grid; grid-template-columns: repeat(3, 1fr);\n  border-top: 1px solid var(--line-dark);\n}\n.stat-item {\n  padding: 28px 20px;\n  text-align: center;\n  border-right: 1px solid var(--line-dark);\n}\n.stat-item:last-child { border-right: none; }\n.stat-num {\n  font-family: var(--font-display);\n  font-size: var(--text-5xl); font-weight: var(--weight-light); line-height: var(--lh-none);\n  color: var(--text-dark-primary);\n  letter-spacing: var(--track-tight);\n}\n.stat-num sup {\n  font-size: var(--text-lg); font-weight: var(--weight-body);\n  vertical-align: super; letter-spacing: var(--track-normal);\n  color: var(--accent);\n}\n.stat-label {\n  font-size: var(--text-sm); font-weight: var(--weight-body);\n  color: var(--text-dark-body);\n  line-height: var(--lh-body); margin-top: 6px;\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   BANNER \u2014 no exclusivity\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.banner-strip {\n  background: var(--accent);\n  padding: 14px var(--page-pad);\n  display: flex; align-items: center;\n  justify-content: center; gap: 10px;\n  font-size: var(--text-sm); font-weight: var(--weight-medium);\n  color: #fff;\n}\n.banner-strip svg { width: 16px; height: 16px; flex-shrink: 0; }\n.banner-strip a {\n  color: #fff; font-weight: var(--weight-semibold);\n  border-bottom: 1px solid rgba(255,255,255,0.5);\n  margin-left: 8px; white-space: nowrap;\n}\n.banner-strip a:hover { border-color: #fff; }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   2. WHY + PROCESS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.why-process { background: var(--surface-page); border-bottom: 1px solid var(--line); }\n.pillars {\n  display: grid; grid-template-columns: repeat(3, 1fr);\n  gap: var(--space-md); margin-bottom: var(--space-2xl);\n}\n.pillar {\n  padding: var(--space-lg) var(--space-md);\n  background: var(--surface-raised);\n  position: relative; overflow: hidden;\n  transition: transform var(--dur-base), box-shadow var(--dur-base);\n}\n.pillar::after {\n  content: ''; position: absolute; bottom: 0; left: 0;\n  width: 0; height: 2px; background: var(--accent);\n  transition: width var(--dur-slow) var(--ease-out);\n}\n.pillar:hover { transform: translateY(-3px); box-shadow: 0 8px 32px rgba(0,0,0,0.08); }\n.pillar:hover::after { width: 100%; }\n.pillar-num {\n  font-family: var(--font-display);\n  font-size: var(--text-xs); font-weight: var(--weight-semibold);\n  letter-spacing: var(--track-eyebrow); color: var(--accent);\n  margin-bottom: var(--space-sm);\n}\n.pillar h3 {\n  font-family: var(--font-display);\n  font-size: var(--text-md); font-weight: var(--weight-medium);\n  color: var(--text-primary);\n  margin-bottom: var(--space-xs);\n}\n.pillar p {\n  font-size: var(--text-base); color: var(--text-body);\n  line-height: var(--lh-relaxed); font-weight: var(--weight-body);\n}\n\n\/* Process toggle *\/\n.proc-divider {\n  display: flex; align-items: center; gap: var(--space-md);\n  margin-bottom: var(--space-md);\n}\n.proc-divider span {\n  font-size: var(--text-eyebrow); font-weight: var(--weight-bold);\n  letter-spacing: var(--track-eyebrow); text-transform: uppercase;\n  color: var(--accent); white-space: nowrap;\n}\n.proc-divider::before, .proc-divider::after {\n  content: ''; flex: 1; height: 1px; background: var(--line);\n}\n\n.proc-toggle {\n  display: inline-flex; align-items: center; gap: 12px;\n  background: var(--surface-raised); border: 1px solid var(--line);\n  cursor: pointer; padding: 15px 32px;\n  font-family: var(--font-body); font-size: var(--text-base);\n  font-weight: var(--weight-medium); color: var(--text-primary);\n  letter-spacing: var(--track-wide);\n  transition: border-color var(--dur-base), color var(--dur-base), background var(--dur-base);\n}\n.proc-toggle:hover { border-color: var(--accent); color: var(--accent); background: var(--surface-sunken); }\n.proc-toggle-icon {\n  width: 14px; height: 14px;\n  transition: transform var(--dur-base), color var(--dur-base);\n}\n.proc-toggle.open .proc-toggle-icon { transform: rotate(45deg); }\n.proc-toggle.open { border-color: var(--accent); color: var(--accent); }\n\n.process-grid-wrap {\n  max-height: 0; overflow: hidden;\n  transition: max-height 0.5s var(--ease);\n}\n.process-grid-wrap.open {\n  max-height: 2000px;\n  overflow: visible;\n}\n.process-grid-wrap .process-grid {\n  margin-top: var(--space-xl);\n}\n.process-grid {\n  display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;\n}\n.pstep {\n  border: 1px solid var(--line);\n  padding: 36px 28px 32px;\n  display: flex; flex-direction: column; gap: 0;\n  transition: border-color var(--dur-base), transform var(--dur-base), background var(--dur-base);\n  position: relative; overflow: hidden;\n}\n.pstep::after {\n  content: ''; position: absolute;\n  bottom: 0; left: 0; right: 0; height: 2px;\n  background: var(--accent);\n  transform: scaleX(0); transform-origin: left;\n  transition: transform var(--dur-slow) var(--ease-out);\n}\n.pstep:hover { border-color: var(--accent); transform: translateY(-3px); background: var(--surface-raised); box-shadow: 0 8px 24px rgba(0,0,0,0.06); }\n.pstep:hover::after { transform: scaleX(1); }\n.pstep-ghost {\n  font-family: var(--font-display);\n  font-size: var(--text-display); font-weight: var(--weight-bold);\n  color: var(--line);\n  line-height: var(--lh-none); letter-spacing: var(--track-tight);\n  margin-bottom: var(--space-sm);\n  transition: color var(--dur-slow);\n  user-select: none;\n}\n.pstep:hover .pstep-ghost { color: rgba(255,92,11,0.15); }\n.pstep-num {\n  font-family: var(--font-display);\n  font-size: var(--text-eyebrow); font-weight: var(--weight-bold);\n  color: var(--accent);\n  letter-spacing: var(--track-eyebrow); text-transform: uppercase;\n  margin-bottom: var(--space-sm);\n  display: flex; align-items: center; gap: 8px;\n}\n.pstep-num::after {\n  content: ''; width: 20px; height: 1px; background: var(--accent); opacity: 0.4;\n}\n.pstep-title {\n  font-family: var(--font-display); font-size: var(--text-md);\n  font-weight: var(--weight-semibold); color: var(--text-primary); margin-bottom: 10px;\n}\n.pstep-desc { font-size: var(--text-base); color: var(--text-body); line-height: var(--lh-relaxed); font-weight: var(--weight-body); }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   3. VILLAGES \u2014 dark\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.villages {\n  background: var(--surface-dark);\n  border-bottom: 1px solid var(--line-dark);\n}\n.villages-hd { text-align: center; margin-bottom: var(--space-xl); }\n.villages-hd p { font-size: var(--text-base); color: var(--text-dark-secondary); max-width: 520px; margin: 0 auto; line-height: var(--lh-relaxed); }\n\n\/* Commune card *\/\n.commune-card {\n  background: var(--surface-dark-2);\n  border: 1px solid var(--line-dark);\n  padding: var(--space-lg);\n  margin-bottom: var(--space-md);\n  display: flex; align-items: flex-start; gap: var(--space-xl);\n}\n.commune-label {\n  font-size: var(--text-eyebrow); font-weight: var(--weight-semibold);\n  letter-spacing: var(--track-eyebrow); text-transform: uppercase;\n  color: var(--accent); margin-bottom: var(--space-xs);\n}\n.commune-title {\n  font-family: var(--font-display);\n  font-size: var(--text-md); font-weight: var(--weight-medium);\n  color: var(--text-dark-primary); margin-bottom: var(--space-xs);\n}\n.commune-sub { font-size: var(--text-sm); color: var(--text-dark-secondary); line-height: var(--lh-body); max-width: 520px; }\n.commune-stats { display: flex; gap: var(--space-xl); flex-shrink: 0; }\n.cstat { text-align: center; }\n.cstat-num {\n  font-family: var(--font-display);\n  font-size: var(--text-2xl); font-weight: var(--weight-light);\n  color: var(--text-dark-primary); letter-spacing: var(--track-tight);\n}\n.cstat-num .m2 {\n  color: var(--accent);\n  font-size: var(--text-sm); font-weight: var(--weight-body);\n  margin-left: 3px; vertical-align: super;\n  line-height: var(--lh-none); letter-spacing: var(--track-normal);\n}\n.cstat-label { font-size: var(--text-xs); color: var(--text-dark-secondary); line-height: var(--lh-body); margin-top: 4px; }\n\n\/* Village grid *\/\n.village-grid {\n  display: grid; grid-template-columns: repeat(5, 1fr);\n  gap: var(--space-sm);\n}\n.vcard {\n  background: var(--surface-dark-2);\n  border: 1px solid var(--line-dark);\n  border-left: 3px solid transparent;\n  padding: var(--space-md);\n  text-decoration: none;\n  transition: border-color var(--dur-base), background var(--dur-base), transform var(--dur-base);\n  display: flex; flex-direction: column;\n}\n.vcard:hover {\n  border-color: var(--accent);\n  border-left-color: var(--accent);\n  background: var(--surface-dark-3);\n  transform: translateY(-2px);\n}\n.vcard-name {\n  font-family: var(--font-display);\n  font-size: var(--text-base); font-weight: var(--weight-medium);\n  color: var(--text-dark-primary); margin-bottom: 4px;\n}\n.vcard-type { font-size: var(--text-xs); color: var(--text-dark-secondary); margin-bottom: var(--space-sm); }\n.vcard-price {\n  font-family: var(--font-display);\n  font-size: var(--text-lg); font-weight: var(--weight-body);\n  color: var(--text-dark-primary); letter-spacing: var(--track-snug);\n  margin-bottom: 4px;\n white-space: nowrap; font-variant-numeric: tabular-nums;}\n.vcard-price .m2 {\n  font-size: var(--text-xs); font-weight: var(--weight-body);\n  margin-left: 2px; vertical-align: super;\n  line-height: var(--lh-none); letter-spacing: var(--track-normal); color: var(--accent);\n}\n.vcard-price-label { font-size: var(--text-xs); color: var(--text-dark-secondary); }\n.vcard-link {\n  font-size: var(--text-xs); color: var(--accent);\n  margin-top: auto; padding-top: var(--space-sm);\n}\n.villages-note {\n  font-size: var(--text-xs); color: var(--text-dark-tertiary);\n  margin-top: var(--space-md); line-height: var(--lh-body);\n  text-align: center;\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   4. BRIEF \/ SEARCH PLAN\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.brief-plan { background: var(--surface-page); border-bottom: 1px solid var(--line); }\n.brief-layout {\n  display: grid; grid-template-columns: 1fr 1fr;\n  gap: var(--space-2xl); align-items: center;\n}\n.brief-eyebrow {\n  font-family: var(--font-body);\n  font-size: var(--text-eyebrow); font-weight: var(--weight-semibold);\n  letter-spacing: var(--track-eyebrow); text-transform: uppercase;\n  color: var(--accent); margin-bottom: var(--space-md);\n  display: flex; align-items: center; gap: 10px;\n}\n.brief-eyebrow::before { content: ''; width: 24px; height: 1px; background: var(--accent); }\n.brief-title {\n  font-family: var(--font-display);\n  font-size: var(--h1);\n  font-weight: var(--weight-medium); line-height: var(--lh-tight);\n  letter-spacing: var(--track-tight);\n  color: var(--text-primary); margin-bottom: var(--space-md);\n}\n.brief-title em { font-style: italic; color: var(--accent); }\n.brief-body {\n  font-size: var(--text-base); color: var(--text-secondary);\n  line-height: var(--lh-relaxed); font-weight: var(--weight-body);\n  margin-bottom: var(--space-md);\n}\n.brief-pill {\n  display: inline-flex; align-items: center; gap: 8px;\n  padding: 8px 16px;\n  background: var(--accent-muted); border-left: 2px solid var(--accent);\n  font-size: var(--text-base); color: var(--text-body); font-weight: var(--weight-body);\n  margin-bottom: var(--space-lg);\n}\n.brief-cta {\n  display: inline-flex; align-items: center; gap: 8px;\n  font-size: var(--text-sm); font-weight: var(--weight-medium);\n  color: var(--accent); border-bottom: 1px solid var(--accent);\n  padding-bottom: 2px; cursor: pointer; background: none; border-top: none; border-left: none; border-right: none;\n  transition: gap var(--dur-base);\n}\n.brief-cta:hover { gap: 12px; }\n\n\/* Right panel *\/\n.sp-panel-inner {\n  border: 1px solid var(--line);\n  background: var(--surface-raised);\n  padding: var(--space-lg);\n}\n.sp-step-list { display: flex; flex-direction: column; gap: var(--space-md); }\n.sp-step-item { display: flex; gap: var(--space-md); align-items: flex-start; }\n.sp-step-dot {\n  width: 28px; height: 28px; border-radius: 50%;\n  background: var(--accent); color: #fff;\n  font-size: var(--text-xs); font-weight: var(--weight-semibold);\n  display: flex; align-items: center; justify-content: center;\n  flex-shrink: 0; margin-top: 2px;\n}\n.sp-step-item strong {\n  display: block; font-size: var(--text-sm); font-weight: var(--weight-medium);\n  color: var(--text-primary); margin-bottom: 4px;\n}\n.sp-step-item p { font-size: var(--text-base); color: var(--text-secondary); line-height: var(--lh-body); font-weight: var(--weight-body); }\n\n\/* Full-width form area *\/\n.brief-form-section {\n  background: var(--surface-page);\n  border-top: 1px solid var(--line);\n  padding: 32px 0;\n}\n.brief-form-wrap {\n  max-width: var(--max-width); margin: 0 auto;\n  padding: 0 var(--page-pad);\n}\n.brief-form-title {\n  font-family: var(--font-display);\n  font-size: var(--h3); font-weight: var(--weight-medium);\n  color: var(--text-primary); margin-bottom: var(--space-lg);\n  text-align: center;\n}\n.brief-form-note {\n  font-size: var(--text-xs); color: var(--text-tertiary);\n  text-align: center; margin-top: var(--space-md); line-height: var(--lh-body);\n}\n.brief-tc-note {\n  font-size: var(--text-xs); color: var(--text-tertiary);\n  text-align: center; margin-top: var(--space-xs); line-height: var(--lh-body);\n}\n.form-note-link {\n  color: var(--text-tertiary);\n  text-decoration: underline;\n  transition: color var(--dur-base);\n}\n.form-note-link:hover { color: var(--accent); }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   5. RESOURCES \u2014 buyer guides\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.resources { background: var(--surface-page); border-bottom: 1px solid var(--line); }\n.res-grid {\n  display: grid; grid-template-columns: repeat(3, 1fr);\n  gap: var(--space-md);\n}\n.rcard {\n  display: flex; flex-direction: column;\n  padding: var(--space-lg) var(--space-md);\n  background: var(--surface-raised);\n  border: 1px solid transparent;\n  text-decoration: none;\n  position: relative;\n  z-index: 0;\n  transition: border-color var(--dur-base), transform var(--dur-base), box-shadow var(--dur-base);\n}\n.rcard:hover {\n  border-color: var(--accent);\n  transform: translateY(-2px);\n  box-shadow: 0 6px 24px rgba(0,0,0,0.07);\n  z-index: 10;\n  isolation: isolate;\n}\n.rc-icon {\n  width: 28px; height: 28px;\n  color: var(--accent); margin-bottom: var(--space-sm);\n}\n.rcard h4 {\n  font-family: var(--font-display);\n  font-size: var(--text-base); font-weight: var(--weight-medium);\n  color: var(--text-primary); margin-bottom: 8px;\n}\n.rcard p { font-size: var(--text-base); color: var(--text-secondary); line-height: var(--lh-relaxed); font-weight: var(--weight-body); }\n.rc-link {\n  display: block; margin-top: auto; padding-top: var(--space-sm);\n  font-size: var(--text-xs); font-weight: var(--weight-medium); color: var(--accent);\n  letter-spacing: var(--track-wide);\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   6. FAQ\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.faq { background: var(--surface-page); border-bottom: 1px solid var(--line); }\n.faq-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--space-xl); }\n.faq-item { border-top: 1px solid var(--line); }\n.faq-q {\n  width: 100%; background: none; border: none; cursor: pointer;\n  display: flex; align-items: center; justify-content: space-between;\n  gap: var(--space-md); padding: var(--space-md) 0;\n  font-family: var(--font-body); font-size: var(--text-base); font-weight: var(--weight-body);\n  color: var(--text-primary); text-align: left;\n  transition: color var(--dur-base);\n}\n.faq-q:hover { color: var(--accent); }\n.faq-icon {\n  width: 18px; height: 18px; flex-shrink: 0;\n  color: var(--accent); transition: transform var(--dur-base);\n}\n.faq-item.open .faq-icon { transform: rotate(45deg); }\n.faq-a {\n  font-size: var(--text-base); color: var(--text-secondary);\n  line-height: var(--lh-relaxed); font-weight: var(--weight-body);\n  max-height: 0; overflow: hidden;\n  transition: max-height var(--dur-slow) var(--ease-out), padding var(--dur-slow);\n}\n.faq-a a { color: var(--accent); border-bottom: 1px solid rgba(255,92,11,0.3); }\n.faq-item.open .faq-a { max-height: 300px; padding-bottom: var(--space-md); }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   7. REFERRAL \u2014 dark strip\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.referral {\n  background: var(--surface-sunken) !important;\n  border-top: 1px solid var(--line) !important;\n  border-bottom: 1px solid var(--line) !important;\n}\n.ref-inner {\n  display: flex; align-items: center;\n  justify-content: space-between; gap: 64px;\n}\n.ref-eyebrow {\n  font-size: var(--text-eyebrow); font-weight: var(--weight-semibold);\n  letter-spacing: var(--track-eyebrow); text-transform: uppercase;\n  color: var(--accent) !important; margin-bottom: 12px;\n}\n.ref-title {\n  font-family: var(--font-display);\n  font-size: var(--h2);\n  font-weight: var(--weight-medium); color: var(--surface-dark) !important;\n  margin-bottom: 8px; letter-spacing: var(--track-snug);\n}\n.ref-sub { font-size: var(--text-base); color: var(--text-sec) !important; font-weight: var(--weight-body); line-height: var(--lh-relaxed); }\n.ref-sub strong { color: var(--accent) !important; font-weight: var(--weight-medium); }\n.ref-sub strong a { color: var(--accent) !important; text-decoration: underline; text-underline-offset: 3px; }\n\n\/* Force referral text visible regardless of theme inheritance *\/\n.referral * { -webkit-font-smoothing: antialiased; }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   FLUENT FORM 11 \u2014 FIXED EQUAL COLUMNS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n#fluentform_11,\n#fluentform_11 .ff-form-wrap,\n#fluentform_11 .ff-form-body {\n  width: 100% !important;\n  max-width: 100% !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  background: transparent !important;\n  box-sizing: border-box !important;\n}\n\n#fluentform_11 .ff-t-container {\n  display: flex !important;\n  flex-wrap: nowrap !important;\n  align-items: flex-end !important;\n  justify-content: flex-start !important;\n  gap: 12px !important;\n  width: 100% !important;\n  margin: 0 0 12px 0 !important;\n  padding: 0 !important;\n}\n\n#fluentform_11 .ff-t-cell,\n#fluentform_11 .ff-t-container > .ff-t-cell {\n  flex: 1 1 0 !important;\n  width: 0 !important;\n  min-width: 0 !important;\n  max-width: none !important;\n  padding: 0 !important;\n  margin: 0 !important;\n  box-sizing: border-box !important;\n}\n\n#fluentform_11 .ff-t-cell:has(.ff-btn-submit) {\n  display: flex !important;\n  align-items: stretch !important;\n  justify-content: flex-end !important;\n  flex: 1 1 0 !important;\n  width: 0 !important;\n  min-width: 0 !important;\n  margin: 0 !important;\n  padding: 0 !important;\n}\n\n#fluentform_11 .ff-btn-submit-wrapper,\n#fluentform_11 .ff_submit_btn_wrapper,\n#fluentform_11 .ff-el-group.ff_submit_btn_wrapper {\n  width: 100% !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  display: flex !important;\n  align-items: flex-end !important;\n}\n\n#fluentform_11 .ff-el-group,\n#fluentform_11 .ff-el-input--content {\n  width: 100% !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  background: transparent !important;\n  box-sizing: border-box !important;\n}\n\n#fluentform_11 .ff-el-form-control,\n#fluentform_11 input.ff-el-form-control,\n#fluentform_11 select.ff-el-form-control,\n#fluentform_11 textarea.ff-el-form-control {\n  width: 100% !important;\n  height: 52px !important;\n  min-height: 52px !important;\n  max-height: 52px !important;\n  box-sizing: border-box !important;\n  background: var(--surface-sunken) !important;\n  border: 1px solid var(--line) !important;\n  border-radius: 0 !important;\n  font-family: var(--font-body) !important;\n  font-size: var(--text-sm) !important;\n  font-weight: var(--weight-medium) !important;\n  color: var(--surface-dark) !important;\n  padding: 0 16px !important;\n  margin: 0 !important;\n  box-shadow: none !important;\n  outline: none !important;\n  appearance: none !important;\n  -webkit-appearance: none !important;\n  line-height: 52px !important;\n}\n\n#fluentform_11 .ff-el-form-control::placeholder {\n  color: var(--text-dark-secondary) !important;\n  font-weight: var(--weight-body) !important;\n}\n\n#fluentform_11 .ff-el-form-control:focus {\n  border-color: var(--accent) !important;\n  background: var(--surface-sunken) !important;\n  box-shadow: none !important;\n  outline: none !important;\n}\n\n#fluentform_11 select.ff-el-form-control {\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath fill='none' stroke='%23555552' stroke-width='1.5' d='M1 1l5 5 5-5'\/%3E%3C\/svg%3E\") !important;\n  background-repeat: no-repeat !important;\n  background-position: right 14px center !important;\n  padding-right: 38px !important;\n  cursor: pointer !important;\n}\n\n#fluentform_11 .ff-el-input--label label {\n  font-family: var(--font-body) !important;\n  font-size: var(--text-eyebrow) !important;\n  font-weight: var(--weight-semibold) !important;\n  color: var(--text-sec) !important;\n  letter-spacing: var(--track-wide) !important;\n  text-transform: uppercase !important;\n  margin-bottom: 6px !important;\n  display: block !important;\n}\n\n#fluentform_11 .ff-btn-submit,\n#fluentform_11 button[type=\"submit\"] {\n  width: 100% !important;\n  height: 52px !important;\n  min-height: 52px !important;\n  max-height: 52px !important;\n  background: var(--accent) !important;\n  border: none !important;\n  border-radius: 0 !important;\n  font-family: var(--font-body) !important;\n  font-weight: var(--weight-semibold) !important;\n  font-size: var(--text-sm) !important;\n  letter-spacing: var(--track-wide) !important;\n  color: #ffffff !important;\n  padding: 0 24px !important;\n  box-shadow: none !important;\n  cursor: pointer !important;\n  transition: background 0.22s ease !important;\n  margin: 0 !important;\n  align-self: stretch !important;\n}\n\n#fluentform_11 .ff-btn-submit:hover,\n#fluentform_11 button[type=\"submit\"]:hover {\n  background: var(--accent-hover) !important;\n}\n\n#fluentform_11 .ff-message-success {\n  background: transparent !important;\n  font-family: var(--font-body) !important;\n  font-size: var(--text-sm) !important;\n  color: var(--surface-dark) !important;\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   RESPONSIVE\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n@media (max-width: 960px) {\n  :root { --page-pad: 10px; --space-2xl: 72px; }\n  .pillars { grid-template-columns: 1fr 1fr; }\n  .process-grid { grid-template-columns: 1fr 1fr; }\n  .village-grid { grid-template-columns: repeat(3, 1fr); }\n  .brief-layout { grid-template-columns: 1fr; }\n  .res-grid { grid-template-columns: 1fr 1fr; }\n  .faq-cols { grid-template-columns: 1fr; }\n  .ref-inner { flex-direction: column; text-align: center; }\n  .commune-card { flex-direction: column; gap: var(--space-md); }\n  .commune-stats { justify-content: center; }\n}\n\n@media (max-width: 600px) {\n  :root { --page-pad: 10px; --space-2xl: 56px; }\n\n  .hero-body {\n    padding-top: 56px;\n    padding-bottom: 48px;\n  }\n\n  .hero h1 {\n    font-size: var(--h1);\n    line-height: var(--lh-tight);\n    letter-spacing: var(--track-tight);\n    max-width: 100%;\n  }\n\n  .hero-sub {\n    font-size: var(--text-base);\n    line-height: var(--lh-relaxed);\n    max-width: 100%;\n  }\n\n  .eyebrow {\n    font-size: var(--text-xs);\n    letter-spacing: var(--track-eyebrow);\n  }\n\n  .stat-bar { grid-template-columns: 1fr 1fr; }\n  .stat-item:last-child { grid-column: 1 \/ -1; border-top: 1px solid var(--line-dark); border-right: none; }\n  .pillars { grid-template-columns: 1fr; }\n  .process-grid { grid-template-columns: 1fr; }\n  .village-grid { grid-template-columns: 1fr 1fr; }\n  .vcard-last { grid-column: 1 \/ -1; text-align: center; }\n  .res-grid { grid-template-columns: 1fr; }\n  .hero-cta-row { flex-direction: column; gap: var(--space-sm); }\n  .banner-strip { font-size: var(--text-sm); }\n  .banner-strip svg { display: none; }\n\n  \/* Service cards \u2014 stack on mobile *\/\n  .svc-strip { padding: 48px 0; }\n  .cards-2 { grid-template-columns: 1fr !important; }\n  .svc-card-compact { padding: 24px 20px 20px; }\n\n  #fluentform_11 .ff-t-container {\n    flex-direction: column !important;\n    flex-wrap: nowrap !important;\n    align-items: stretch !important;\n    gap: 8px !important;\n  }\n\n  #fluentform_11 .ff-t-cell,\n  #fluentform_11 .ff-t-container > .ff-t-cell {\n    flex: 1 1 100% !important;\n    width: 100% !important;\n    min-width: 100% !important;\n    max-width: 100% !important;\n  }\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   COMPACT SERVICE STRIP\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.svc-strip { background: #ffffff; border-top: 1px solid var(--line); padding: 64px 0; }\n.strip-hd { text-align: center; margin-bottom: 40px; }\n.cards-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }\n.svc-card-compact {\n  display: flex; flex-direction: column; padding: 28px 32px 24px;\n  text-decoration: none; border: 1px solid var(--line-dark); border-top: 2px solid var(--line-dark);\n  transition: border-top-color 220ms, background 220ms, transform 300ms;\n}\n.svc-card-compact:hover { border-top-color: var(--accent); transform: translateY(-3px); }\n.svc-card-compact.dark  { background: var(--surface-dark-2); border-color: var(--line-dark); }\n.svc-card-compact.dark:hover  { background: var(--surface-dark-3); }\n.svc-card-compact.light { background: #ffffff; border-color: var(--line); border-top-color: var(--line); }\n.svc-card-compact.light:hover { background: var(--surface-raised); border-top-color: var(--accent); }\n.svc-card-compact.mid   { background: var(--text-dark-tertiary); border-color: var(--text-secondary); border-top-color: var(--text-secondary); }\n.svc-card-compact.mid:hover   { background: var(--text-secondary); border-top-color: var(--accent); }\n.scc-tag { font-size: var(--text-xs); font-weight: var(--weight-semibold); letter-spacing: var(--track-eyebrow); text-transform: uppercase; color: var(--accent); margin-bottom: 10px; }\n.scc-title {\n  font-family: var(--font-display);\n  font-size: var(--h3); font-weight: var(--weight-medium);\n  line-height: var(--lh-heading); letter-spacing: var(--track-tight); margin-bottom: 10px;\n}\n.svc-card-compact.dark .scc-title { color: var(--surface-raised); }\n.svc-card-compact.mid  .scc-title { color: var(--surface-raised); }\n.svc-card-compact.light .scc-title { color: var(--surface-dark); }\n.scc-title em { font-style: italic; color: var(--accent); }\n.scc-desc { font-size: var(--text-sm); line-height: var(--lh-relaxed); font-weight: var(--weight-body); margin-bottom: 20px; flex-grow: 1; }\n.svc-card-compact.dark .scc-desc  { color: var(--text-dark-secondary); }\n.svc-card-compact.mid  .scc-desc  { color: var(--line); }\n.svc-card-compact.light .scc-desc { color: var(--text-sec); }\n.scc-cta { display: inline-flex; align-items: center; gap: 8px; font-size: var(--text-sm); font-weight: var(--weight-medium); letter-spacing: var(--track-wide); color: var(--accent); text-decoration: none; transition: gap 200ms; }\n.svc-card-compact:hover .scc-cta { gap: 12px; }\n.scc-cta svg { width: 14px; height: 14px; flex-shrink: 0; transition: transform 200ms; }\n.svc-card-compact:hover .scc-cta svg { transform: translateX(3px); }\n\n\n\/* \u2500\u2500 BUYER SAVINGS CALCULATOR (22 Oct 2026) \u2500\u2500 *\/\n.sc { background: var(--surface-sunken); border-bottom: 1px solid var(--line); }\n.sc-grid { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 32px; align-items: start; }\n.sc-in { background: var(--surface-card); border: 1px solid var(--line); padding: 24px; }\n.sc-f { margin-bottom: 18px; }\n.sc-f label { display: block; font-size: var(--text-sm); font-weight: var(--weight-semibold); color: var(--text-primary); margin-bottom: 6px; }\n.sc-f .sc-hint { font-size: var(--text-xs); color: var(--text-tertiary); margin-top: 5px; line-height: 1.45; }\n.sc-f input[type=text], .sc-f input[type=number] { width: 100%; padding: 11px 12px; border: 1px solid var(--line); font: inherit; font-size: var(--text-base); background: var(--white); color: var(--text-primary); }\n.sc-seg { display: flex; border: 1px solid var(--line); }\n.sc-seg button { flex: 1; padding: 10px 8px; background: var(--white); border: 0; font: inherit; font-size: var(--text-sm); cursor: pointer; color: var(--text-secondary); }\n.sc-seg button + button { border-left: 1px solid var(--line); }\n.sc-seg button.on { background: var(--surface-dark); color: #fff; }\n.sc-ass summary { cursor: pointer; font-size: var(--text-sm); font-weight: var(--weight-semibold); color: var(--accent); margin-top: 4px; }\n.sc-ass table { width: 100%; border-collapse: collapse; margin-top: 10px; font-size: var(--text-sm); }\n.sc-ass td { padding: 5px 0; color: var(--text-secondary); }\n.sc-ass td:last-child { text-align: right; width: 78px; }\n.sc-ass input { width: 64px; padding: 5px 6px; border: 1px solid var(--line); font: inherit; font-size: var(--text-sm); text-align: right; }\n.sc-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }\n.sc-col { background: var(--surface-card); border: 1px solid var(--line); padding: 18px 16px; }\n.sc-col.mid { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent) inset; }\n.sc-col h3 { font-size: var(--text-sm); font-weight: var(--weight-semibold); letter-spacing: var(--track-wide); text-transform: uppercase; color: var(--text-secondary); margin-bottom: 2px; }\n.sc-pct { font-size: var(--text-xs); color: var(--text-tertiary); margin-bottom: 12px; }\n.sc-l { display: flex; justify-content: space-between; gap: 8px; font-size: var(--text-sm); color: var(--text-secondary); padding: 5px 0; border-bottom: 1px solid var(--line); }\n.sc-l b { color: var(--text-primary); font-weight: var(--weight-semibold); white-space: nowrap; }\n.sc-l.neg b { color: var(--error); }\n.sc-tot { margin-top: 12px; }\n.sc-tot .sc-tl { font-size: var(--text-xs); color: var(--text-tertiary); text-transform: uppercase; letter-spacing: var(--track-wide); }\n.sc-tot .sc-tv { font-family: var(--font-display); font-size: var(--text-2xl); color: var(--text-primary); line-height: 1.15; }\n.sc-tot .sc-tv.neg { color: var(--error); }\n.sc-warn { margin-top: 14px; font-size: var(--text-sm); color: var(--text-secondary); background: var(--warning, #fff6e5); background: var(--accent-surface); border-left: 3px solid var(--accent); padding: 10px 12px; line-height: 1.5; }\n.sc-risk-h { margin-top: 36px; font-family: var(--font-display); font-size: var(--h3); color: var(--text-primary); }\n.sc-risk-p { font-size: var(--text-sm); color: var(--text-secondary); margin: 6px 0 14px; max-width: 640px; line-height: var(--lh-relaxed); }\n.sc-risks { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }\n.sc-risk { background: var(--surface-card); border: 1px solid var(--line); padding: 16px; }\n.sc-risk h4 { font-size: var(--text-sm); font-weight: var(--weight-semibold); color: var(--text-primary); margin-bottom: 6px; }\n.sc-risk p { font-size: var(--text-sm); color: var(--text-secondary); line-height: 1.5; }\n.sc-cta { margin-top: 28px; display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }\n.sc-disc { font-size: var(--text-xs); color: var(--text-tertiary); line-height: 1.5; max-width: 620px; }\n@media (max-width: 900px) { .sc-grid { grid-template-columns: 1fr; } }\n@media (max-width: 640px) { .sc-cols { grid-template-columns: 1fr; } .sc-in { padding: 18px 16px; } }\n<\/style>\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     1 \u00b7 HERO \u2014 dark\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"hero\">\n  <div class=\"wrap\">\n    <div class=\"hero-body\">\n      <p class=\"eyebrow center\">Hesperange Commune \u00b7 Buyer's Agent<\/p>\n      <h1><span>You're negotiating against<\/span> <em>the seller's agent.<\/em><\/h1>\n      <p class=\"hero-sub\">In Luxembourg, the agent at the table works for the seller \u2014 not for you.<br>When you give us a buying mandate, your interests are the only ones we represent \u2014 no conflict, no hidden commissions, and a fee tied entirely to what we save you.<\/p>\n      <div class=\"hero-cta-row\">\n        <a href=\"#brief-form\" class=\"btn-primary\">\n          Start your property search\n          <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg>\n        <\/a>\n        <a href=\"\/en\/real-estate-agency-fees-in-hesperange\/\" class=\"hero-link\">See how our fees work \u2192<\/a>\n      <\/div>\n    <\/div>\n  <\/div>\n  <!-- CHANGED: stat-bar moved outside .wrap \u2014 now full-bleed -->\n  <div class=\"stat-bar\">\n    <div class=\"stat-item\">\n      <div class=\"stat-num\">30<sup>%<\/sup><\/div>\n      <div class=\"stat-label\">of saving \u2014 our success fee.<br>\u20ac3,000 minimum, paid at the deed.<\/div>\n    <\/div>\n    <div class=\"stat-item\">\n      <div class=\"stat-num\">6<sup>mo<\/sup><\/div>\n      <div class=\"stat-label\">Rolling notarial transaction data<br>for every Hesperange village<\/div>\n    <\/div>\n    <div class=\"stat-item\">\n      <div class=\"stat-num\">0<\/div>\n      <div class=\"stat-label\">Purchases where we are paid<br>by both sides.<\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     BANNER\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<div class=\"banner-strip\">\n  <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><path d=\"M20 6L9 17l-5-5\"\/><\/svg>\n  If you don't buy, you pay nothing. If you do, our success fee is 30% of what we save you, with a \u20ac3,000 minimum, due at the notarial deed.\n  <a href=\"#brief\">Start your search \u2192<\/a>\n<\/div>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     2 \u00b7 WHY + PROCESS\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"why-process\">\n  <div class=\"wrap sps\">\n    <div class=\"section-hd\" style=\"margin-bottom:var(--space-xl)\">\n      <p class=\"eyebrow center\">Why use a buyer's agent<\/p>\n      <h2 class=\"stitle center\">You pay less, you spend less time, you see the problems first<\/h2>\n    <\/div>\n    <div class=\"pillars\">\n      <div class=\"pillar\">\n        <p class=\"pillar-num\">01<\/p>\n        <h3>You pay less for the same home<\/h3>\n        <p>We negotiate from six months of notarial sale prices, not from the asking price. We have no seller to please and no listing to push, so the only number we work on is yours. Our fee is 30% of what we save you, which means we only earn well when you do.<\/p>\n      <\/div>\n      <div class=\"pillar\">\n        <p class=\"pillar-num\">02<\/p>\n        <h3>You get your evenings back<\/h3>\n        <p>By our estimate, a purchase takes 50 to 70 hours of searching, calling agencies, viewing and reading documents. We do that work and shortlist only the homes that fit your brief, including ones that never reach the portals. You see the few worth seeing.<\/p>\n      <\/div>\n      <div class=\"pillar\">\n        <p class=\"pillar-num\">03<\/p>\n        <h3>You see the problems before you sign<\/h3>\n        <p>Damp, works already voted by the co-owners, high charges, a missing permit. We look for them before you make an offer, when they still lower the price. After the deed, they're yours to pay for.<\/p>\n      <\/div>\n    <\/div>\n\n    <div class=\"proc-divider\">\n      <button class=\"proc-toggle\" id=\"procToggle\">\n        <span class=\"proc-toggle-label\">See how we work \u2014 6 steps<\/span>\n        <svg class=\"proc-toggle-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n      <\/button>\n    <\/div>\n\n    <div class=\"process-grid-wrap\" id=\"processGrid\">\n      <div class=\"process-grid\">\n        <div class=\"pstep\">\n          <div class=\"pstep-ghost\">01<\/div>\n          <div class=\"pstep-num\">Step 01<\/div>\n          <div class=\"pstep-title\">Discovery call<\/div>\n          <div class=\"pstep-desc\">We learn your brief, budget, and timeline in detail \u2014 so every property we assess is genuinely matched to your needs, not just roughly close.<\/div>\n        <\/div>\n        <div class=\"pstep\">\n          <div class=\"pstep-ghost\">02<\/div>\n          <div class=\"pstep-num\">Step 02<\/div>\n          <div class=\"pstep-title\">Market analysis<\/div>\n          <div class=\"pstep-desc\">We build your price benchmark from six months of notarial transaction data \u2014 giving you a defensible anchor before any negotiation begins.<\/div>\n        <\/div>\n        <div class=\"pstep\">\n          <div class=\"pstep-ghost\">03<\/div>\n          <div class=\"pstep-num\">Step 03<\/div>\n          <div class=\"pstep-title\">Property search<\/div>\n          <div class=\"pstep-desc\">We search beyond standard portals \u2014 including off-market opportunities \u2014 and shortlist only properties that genuinely match your brief.<\/div>\n        <\/div>\n        <div class=\"pstep\">\n          <div class=\"pstep-ghost\">04<\/div>\n          <div class=\"pstep-num\">Step 04<\/div>\n          <div class=\"pstep-title\">Property evaluation<\/div>\n          <div class=\"pstep-desc\">For every serious candidate we assess real value, flag structural concerns, and help you draft a winning offer grounded in data \u2014 not gut feeling.<\/div>\n        <\/div>\n        <div class=\"pstep\">\n          <div class=\"pstep-ghost\">05<\/div>\n          <div class=\"pstep-num\">Step 05<\/div>\n          <div class=\"pstep-title\">Closing support<\/div>\n          <div class=\"pstep-desc\">We guide you through Luxembourg's legal process \u2014 compromis de vente, the suspensive financing clause, mortgage confirmation, and acte de vente \u2014 so nothing catches you off guard.<\/div>\n        <\/div>\n        <div class=\"pstep\">\n          <div class=\"pstep-ghost\">06<\/div>\n          <div class=\"pstep-num\">Step 06<\/div>\n          <div class=\"pstep-title\">Beyond the deed<\/div>\n          <div class=\"pstep-desc\">Our network of vetted professionals \u2014 renovators, architects, insurers \u2014 helps you turn the property into exactly what you imagined when you started looking.<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     2b \u00b7 BUYER SAVINGS CALCULATOR (22 Oct 2026)\n     Layer 1 negotiation, layer 2 time, layer 3 risks (never added to the total).\n     Fee: 30% of the saving excl. VAT, min EUR 3,000 excl. VAT, VAT 17% shown apart.\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"sc\" id=\"savings-calculator\">\n  <div class=\"wrap sps\">\n    <div class=\"section-hd\">\n      <p class=\"eyebrow center\">Does it pay?<\/p>\n      <h2 class=\"stitle center\">What a buyer's agent is worth to you<\/h2>\n      <p>Put in your price and your income. You'll see what you keep after our fee, at three levels of negotiation, plus the hours you get back.<\/p>\n    <\/div>\n\n    <div class=\"sc-grid\">\n      <div class=\"sc-in\">\n        <div class=\"sc-f\">\n          <label for=\"sc-price\">Price of the home you're looking for<\/label>\n          <input type=\"text\" id=\"sc-price\" inputmode=\"numeric\" value=\"750,000\" aria-describedby=\"sc-price-h\">\n          <div class=\"sc-hint\" id=\"sc-price-h\">The asking price, in euros.<\/div>\n        <\/div>\n        <div class=\"sc-f\">\n          <label for=\"sc-income\">Your household's net monthly income<\/label>\n          <input type=\"text\" id=\"sc-income\" inputmode=\"numeric\" value=\"7,000\" aria-describedby=\"sc-income-h\">\n          <div class=\"sc-hint\" id=\"sc-income-h\">Only used to value your time. Nothing is sent or stored.<\/div>\n        <\/div>\n        <div class=\"sc-f\">\n          <label>Type of home<\/label>\n          <div class=\"sc-seg\" role=\"group\" aria-label=\"Type of home\">\n            <button type=\"button\" class=\"on\" data-sc-type=\"apartment\">Apartment<\/button>\n            <button type=\"button\" data-sc-type=\"house\">House<\/button>\n          <\/div>\n        <\/div>\n        <div class=\"sc-f\">\n          <label>Do you know the Luxembourg market?<\/label>\n          <div class=\"sc-seg\" role=\"group\" aria-label=\"Know the market\">\n            <button type=\"button\" data-sc-know=\"yes\">Yes<\/button>\n            <button type=\"button\" class=\"on\" data-sc-know=\"no\">Not really<\/button>\n          <\/div>\n        <\/div>\n        <details class=\"sc-ass\">\n          <summary>Our assumptions (you can change them)<\/summary>\n          <table>\n            <tr><td>Working hours in a month<\/td><td><input type=\"number\" id=\"sc-hm\" min=\"100\" max=\"260\" value=\"173\"><\/td><\/tr>\n            <tr><td>Searching and filtering listings (h)<\/td><td><input type=\"number\" id=\"sc-h-search\" min=\"0\" step=\"1\"><\/td><\/tr>\n            <tr><td>Contacting agencies, booking viewings (h)<\/td><td><input type=\"number\" id=\"sc-h-contact\" min=\"0\" step=\"1\" value=\"6\"><\/td><\/tr>\n            <tr><td>Number of viewings<\/td><td><input type=\"number\" id=\"sc-n-view\" min=\"0\" step=\"1\" value=\"10\"><\/td><\/tr>\n            <tr><td>Hours per viewing, with travel<\/td><td><input type=\"number\" id=\"sc-h-view\" min=\"0\" step=\"0.25\"><\/td><\/tr>\n            <tr><td>Reading documents and minutes (h)<\/td><td><input type=\"number\" id=\"sc-h-docs\" min=\"0\" step=\"1\"><\/td><\/tr>\n            <tr><td>Negotiation and paperwork to the notary (h)<\/td><td><input type=\"number\" id=\"sc-h-neg\" min=\"0\" step=\"1\" value=\"8\"><\/td><\/tr>\n          <\/table>\n        <\/details>\n      <\/div>\n\n      <div>\n        <div class=\"sc-cols\" id=\"sc-cols\" aria-live=\"polite\"><\/div>\n        <div class=\"sc-warn\" id=\"sc-warn\" hidden><\/div>\n      <\/div>\n    <\/div>\n\n    <h3 class=\"sc-risk-h\">The costs nobody puts in the listing<\/h3>\n    <p class=\"sc-risk-p\">These aren't in the total above, because they depend on the home. They're the problems we look for before you make an offer, and each one can cost far more than our fee.<\/p>\n    <div class=\"sc-risks\">\n      <div class=\"sc-risk\"><h4>Hidden defects<\/h4><p>Damp, a tired roof, old wiring or plumbing. Easy to miss on a 30-minute viewing, expensive to put right after the deed.<\/p><\/div>\n      <div class=\"sc-risk\"><h4>Renovation you didn't budget for<\/h4><p>A kitchen, bathroom or windows near the end of their life. We price them in before the offer, not after.<\/p><\/div>\n      <div class=\"sc-risk\"><h4>Works already voted by the co-owners<\/h4><p>Facade, roof or lift works approved at the general meeting of the building. The minutes show them; the listing doesn't.<\/p><\/div>\n      <div class=\"sc-risk\"><h4>High charges or a thin reserve fund<\/h4><p>Monthly charges that don't match the building, or a reserve too small for the next big repair.<\/p><\/div>\n      <div class=\"sc-risk\"><h4>Permits, energy class and the land register<\/h4><p>Extensions without a permit, a poor energy class, easements or rights of way you only find at the notary.<\/p><\/div>\n    <\/div>\n\n    <div class=\"sc-cta\">\n      <a href=\"#brief-form\" class=\"btn-primary\">\n        Book a free conversation\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg>\n      <\/a>\n      <p class=\"sc-disc\">The figures are illustrative scenarios, not a promised result. The saving is measured against the asking price when we first present the property. Our fee is 30% of that saving excl. VAT, with a &euro;3,000 minimum excl. VAT, paid at the notarial deed. VAT is 17%.<\/p>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     2b \u00b7 TWO WAYS TO WORK WITH US\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section id=\"two-ways\">\n  <div class=\"wrap sps\">\n    <div class=\"section-hd\" style=\"margin-bottom:var(--space-xl)\">\n      <p class=\"eyebrow center\">How we're paid<\/p>\n      <h2 class=\"stitle center\">Two ways to work with us<\/h2>\n    <\/div>\n    <div class=\"sc-risks\">\n      <div class=\"sc-risk\"><h4>Full buyer representation<\/h4><p>We search, check and negotiate for you alone. If you don't buy, you pay nothing. If you do, we're paid at the notary, from part of what we save you.<\/p><\/div>\n      <div class=\"sc-risk\"><h4>Prefer not to pay a fee?<\/h4><p>On selected properties, the seller's agent may share their commission with us. We'll always tell you in writing when that's the case. Our help is then limited to that property, and you should know our fee comes from the seller's side.<\/p><\/div>\n    <\/div>\n    <p class=\"sc-disc\" style=\"margin-top:20px\">Whichever you choose, we are never paid by both the buyer and the seller on the same purchase.<\/p>\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     3 \u00b7 VILLAGES \u2014 dark\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     4 \u00b7 BRIEF \/ SEARCH PLAN\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"brief-plan\" id=\"brief\">\n  <div class=\"wrap sps\">\n    <div class=\"brief-layout\">\n\n      <div class=\"brief-left\">\n        <p class=\"brief-eyebrow\">Start here<\/p>\n        <h2 class=\"brief-title\">Tell us your ideal property.<br><em>We'll find it.<\/em><\/h2>\n        <p class=\"brief-body\">Share your requirements and we'll be back within 24 hours to arrange a call \u2014 understand what you're looking for and explain how we work. No commitment, no hard sell.<\/p>\n        <div class=\"brief-pill\">\n          <span>\u2713<\/span> Success fee: 30% of what we save you, \u20ac3,000 minimum. Paid at the deed.*\n        <\/div>\n        <a href=\"#brief-form\" class=\"btn-primary\">\n          Fill in the form below\n          <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg>\n        <\/a>\n      <\/div>\n\n      <div class=\"brief-right\">\n        <div class=\"sp-panel-inner\">\n          <p class=\"eyebrow\" style=\"margin-bottom:var(--space-md)\">What happens next<\/p>\n          <div class=\"sp-step-list\">\n            <div class=\"sp-step-item\">\n              <div class=\"sp-step-dot\">1<\/div>\n              <div>\n                <strong>You fill in the form below<\/strong>\n                <p>Village, property type, budget, and timeline \u2014 takes 60 seconds.<\/p>\n              <\/div>\n            <\/div>\n            <div class=\"sp-step-item\">\n              <div class=\"sp-step-dot\">2<\/div>\n              <div>\n                <strong>We review your brief<\/strong>\n                <p>We cross-reference your requirements against active listings and our transaction data.<\/p>\n              <\/div>\n            <\/div>\n            <div class=\"sp-step-item\">\n              <div class=\"sp-step-dot\">3<\/div>\n              <div>\n                <strong>We come back within 24h<\/strong>\n                <p>To arrange a call, understand your search in detail, and walk you through how we work \u2014 no obligation.<\/p>\n              <\/div>\n            <\/div>\n            <div class=\"sp-step-item\">\n              <div class=\"sp-step-dot\">4<\/div>\n              <div>\n                <strong>You decide if we're the right fit<\/strong>\n                <p>No pressure, no hard sell. If you want to proceed, we'll build the full search plan together.<\/p>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n\n  <!-- Full-width form -->\n  <div class=\"brief-form-section\" id=\"brief-form\">\n    <div class=\"brief-form-wrap\">\n      <p class=\"brief-form-title\" style=\"text-align:center;\">Ready to buy? Tell us about your ideal property<\/p>\n      <style>\n.zf{--a:var(--accent,#ff5c0b);--ah:#e85206;--ring:rgba(255,92,11,.16);--ink:#111110;--body:#2a2a28;--mut:#76736e;--ph:#a3a09a;--ln:#e4e0d9;--ln2:#d3cec5;--fill:#f4f2ee;--card:#fff;--err:#c0392b;--r:12px;\n container-type:inline-size;font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif!important;color:var(--body);text-align:left;width:100%;max-width:100%;margin:0;position:relative}\n.zf *,.zf *::before,.zf *::after{box-sizing:border-box;font-family:inherit!important}\n.zf label,.zf span,.zf p{text-transform:none!important;letter-spacing:0!important}\n.zf .zf-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}\n.zf .zf-row{display:grid;gap:12px;grid-template-columns:1fr}\n.zf .zf-field{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0}\n.zf .zf-label{display:block;margin:0;font-size:13.5px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--body)!important;line-height:1.3}\n.zf .zf-req{color:var(--a)}\n.zf .zf-kicker{margin:0 0 10px;font-size:12px!important;font-weight:600;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--mut)}\n.zf .zf-row+.zf-kicker{margin-top:18px}\n.zf input[type=text],.zf input[type=email],.zf input[type=tel],.zf select,.zf textarea{\n display:block;width:100%!important;height:54px;margin:0!important;padding:0 16px!important;font-size:16px!important;font-weight:400!important;line-height:1.3!important;color:var(--ink)!important;\n background:var(--card)!important;border:1.5px solid var(--ln)!important;border-radius:var(--r)!important;box-shadow:none!important;outline:none!important;\n -webkit-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s,background-color .15s}\n.zf textarea{height:auto;min-height:128px;padding:14px 16px!important;resize:vertical}\n.zf input::placeholder,.zf textarea::placeholder{color:var(--ph)!important;opacity:1}\n.zf input:hover,.zf select:hover,.zf textarea:hover{border-color:var(--ln2)!important}\n.zf input:focus,.zf select:focus,.zf textarea:focus{border-color:var(--a)!important;box-shadow:0 0 0 4px var(--ring)!important;background:#fff!important}\n.zf .zf-select{position:relative;display:block}\n.zf .zf-select::after{content:\"\";position:absolute;right:18px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:1.8px solid var(--mut);border-bottom:1.8px solid var(--mut);transform:rotate(45deg);pointer-events:none}\n.zf select{padding-right:44px!important;cursor:pointer}\n.zf select.zf-empty{color:var(--ph)!important}\n.zf .zf-bad input,.zf .zf-bad select,.zf .zf-bad textarea{border-color:var(--err)!important}\n.zf .zf-bad input:focus,.zf .zf-bad select:focus,.zf .zf-bad textarea:focus{box-shadow:0 0 0 4px rgba(192,57,43,.14)!important}\n.zf .zf-err{font-size:13px;color:var(--err);line-height:1.35}\n.zf .zf-err[hidden]{display:none}\n\/* filled look for the short forms that sit on tinted sections *\/\n.zf--buying input[type],.zf--buying select,.zf--selling input[type],.zf--selling select{background:var(--fill)!important;border-color:transparent!important}\n.zf--buying input:hover,.zf--buying select:hover,.zf--selling input:hover,.zf--selling select:hover{border-color:var(--ln)!important}\n\/* button *\/\n.zf .zf-actions{margin:0}\n.zf .zf-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;margin:0;padding:0 26px!important;border:0!important;border-radius:var(--r)!important;\n background:var(--a)!important;color:#fff!important;font-size:15.5px!important;font-weight:600!important;letter-spacing:.01em!important;text-transform:none!important;line-height:1!important;cursor:pointer;\n box-shadow:0 8px 20px -8px rgba(255,92,11,.55)!important;transition:background .15s,transform .15s,box-shadow .15s}\n.zf .zf-btn:hover{background:var(--ah)!important;transform:translateY(-1px);box-shadow:0 12px 24px -10px rgba(255,92,11,.6)!important}\n.zf .zf-btn:active{transform:none}\n.zf .zf-btn:focus-visible{outline:3px solid var(--ring)!important;outline-offset:2px}\n.zf .zf-btn-arrow{flex:0 0 auto;transition:transform .15s}\n.zf .zf-btn:hover .zf-btn-arrow{transform:translateX(3px)}\n.zf .zf-btn[disabled]{opacity:.7;cursor:progress;transform:none}\n.zf .zf-actions--full{margin-top:18px}\n\/* note, status, turnstile *\/\n.zf .zf-note{display:flex;align-items:center;gap:7px;margin:12px 0 0;font-size:13px!important;line-height:1.4;color:var(--mut)}\n.zf .zf-note svg{flex:0 0 auto;color:var(--mut)}\n.zf .zf-note a,.zf .zf-check a{font-size:inherit!important;font-weight:500;color:var(--a)!important;text-decoration:underline;text-underline-offset:2px}\n.zf .zf-ts{margin-top:12px}\n.zf .zf-ts:empty{display:none}\n.zf .zf-status{margin:12px 0 0;padding:12px 14px;border-radius:10px;background:#fdecea;color:var(--err);font-size:14px}\n.zf .zf-status[hidden]{display:none}\n.zf .zf-msgs{display:none!important}\n\/* layouts by the form's own width *\/\n@container (min-width:560px){\n .zf .zf-row--2,.zf .zf-row--4,.zf .zf-row--5{grid-template-columns:1fr 1fr}\n .zf .zf-field--wide,.zf .zf-row--4 .zf-actions,.zf .zf-row--5 .zf-actions{grid-column:1\/-1}\n}\n@container (min-width:760px){\n .zf .zf-row--4{grid-template-columns:repeat(4,1fr)}\n .zf .zf-row--4 .zf-actions{grid-column:auto}\n .zf .zf-row--5{grid-template-columns:repeat(3,1fr)}\n}\n@container (min-width:980px){\n .zf .zf-row--5{grid-template-columns:repeat(5,1fr)}\n .zf .zf-row--5 .zf-actions{grid-column:auto}\n}\n@container (min-width:560px){ .zf--contact .zf-actions--full .zf-btn{width:auto;min-width:240px} }\n\/* referral: three steps as cards *\/\n.zf--referral{display:grid;gap:16px}\n.zf .zf-step{background:var(--card);border:1px solid #ece8e1;border-radius:18px;padding:22px 18px;box-shadow:0 1px 2px rgba(17,17,16,.04),0 10px 30px -18px rgba(17,17,16,.18)}\n@container (min-width:560px){ .zf .zf-step{padding:28px 30px} }\n.zf .zf-step-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}\n.zf .zf-step-num{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--a);color:#fff;font-size:14px;font-weight:700}\n.zf .zf-step-title{margin:2px 0 3px!important;font-size:18px!important;font-weight:650!important;letter-spacing:-.01em;color:var(--ink)!important;text-transform:none!important;line-height:1.25}\n.zf .zf-step-sub{margin:0!important;font-size:14px!important;color:var(--mut)!important;line-height:1.45}\n\/* chips and cards (radio groups) *\/\n.zf .zf-opt{position:relative;display:block;margin:0;cursor:pointer}\n.zf .zf-opt input{position:absolute;opacity:0;width:1px;height:1px;margin:0}\n.zf .zf-opt-box{display:flex;align-items:center;gap:10px;height:100%;border:1.5px solid var(--ln);border-radius:var(--r);background:#fff;transition:border-color .15s,background .15s,box-shadow .15s;color:var(--body)}\n.zf .zf-opt:hover .zf-opt-box{border-color:var(--ln2)}\n.zf .zf-opt input:focus-visible+.zf-opt-box{box-shadow:0 0 0 4px var(--ring)}\n.zf .zf-opt input:checked+.zf-opt-box{border-color:var(--a);background:#fff6f1;color:var(--ink);box-shadow:0 0 0 1px var(--a) inset}\n.zf .zf-chips{display:flex;flex-wrap:wrap;gap:8px}\n.zf .zf-chips .zf-opt-box{height:44px;padding:0 18px;font-size:15px;font-weight:500;border-radius:999px}\n.zf .zf-cards{display:grid;grid-template-columns:1fr;gap:10px}\n@container (min-width:520px){ .zf .zf-cards{grid-template-columns:1fr 1fr} }\n@container (min-width:860px){ .zf .zf-cards{grid-template-columns:repeat(4,1fr)} }\n.zf .zf-cards .zf-opt-box{flex-direction:row;padding:14px 16px;min-height:64px;font-size:15px;line-height:1.3}\n@container (min-width:860px){ .zf .zf-cards .zf-opt-box{flex-direction:column;align-items:flex-start;padding:18px;min-height:112px} }\n.zf .zf-card-icon{font-size:24px;line-height:1}\n.zf .zf-opt-text{font-weight:500}\n.zf .zf-cards .zf-opt-text::first-letter{text-transform:uppercase}\n.zf .zf-bad .zf-opt-box{border-color:var(--err)}\n.zf fieldset.zf-person{border:0;margin:18px 0 0;padding:18px 0 0;min-width:0;border-top:1px dashed var(--ln)!important;animation:zfIn .25s ease}\n.zf fieldset.zf-person[hidden]{display:none}\n@keyframes zfIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}\n\/* consent *\/\n.zf .zf-field--check{margin-top:18px}\n.zf .zf-check{display:flex;gap:12px;align-items:flex-start;margin:0;font-size:14px!important;font-weight:400!important;line-height:1.55;color:var(--body)!important;text-transform:none!important;cursor:pointer}\n.zf .zf-check input{position:absolute;opacity:0;width:1px;height:1px}\n.zf .zf-check-box{flex:0 0 auto;width:22px;height:22px;margin-top:1px;border:1.5px solid var(--ln2);border-radius:7px;background:#fff;transition:all .15s;position:relative}\n.zf .zf-check input:checked+.zf-check-box{background:var(--a);border-color:var(--a)}\n.zf .zf-check input:checked+.zf-check-box::after{content:\"\";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}\n.zf .zf-check input:focus-visible+.zf-check-box{box-shadow:0 0 0 4px var(--ring)}\n.zf .zf-bad .zf-check-box{border-color:var(--err)}\n\/* thank-you *\/\n.zf-done{display:flex;gap:16px;align-items:flex-start;padding:24px;border-radius:18px;background:#fff;border:1px solid #ece8e1;box-shadow:0 10px 30px -18px rgba(17,17,16,.18);font-family:'Inter',system-ui,sans-serif;text-align:left}\n.zf-done::before{content:\"\";flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:#eaf5ee url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%231e7e34' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\") center\/22px no-repeat}\n.zf-done strong{display:block;margin:2px 0 4px;font-size:18px;font-weight:650;color:#111110}\n.zf-done span{display:block;font-size:15px;line-height:1.55;color:#555552}\n<\/style><form class=\"zf zf--buying\" data-zf-type=\"buying\" novalidate onsubmit=\"return false;\"\n      action=\"\/zeas-proxy.php?action=site_form\" method=\"post\" data-sitekey=\"0x4AAAAAACBgdgqeEp3RjOeQ\">\n\t<p class=\"zf-kicker\">What you are looking for<\/p><div class=\"zf-row zf-row--5\"><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-village\">Village<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><span class=\"zf-select\"><select id=\"zf1-village\" name=\"village\" required ><option value=\"\" selected disabled selected>Village<\/option><option value=\"Howald\">Howald<\/option><option value=\"Hesperange\">Hesperange<\/option><option value=\"Fentange\">Fentange<\/option><option value=\"Itzig\">Itzig<\/option><option value=\"Alzingen\">Alzingen<\/option><option value=\"Any village in Hesperange\">Any village in Hesperange<\/option><option value=\"Any commune\">Any commune<\/option><\/select><\/span><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-propertyType\">Property type<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><span class=\"zf-select\"><select id=\"zf1-propertyType\" name=\"propertyType\" required ><option value=\"\" selected disabled selected>Property type<\/option><option value=\"House\">House<\/option><option value=\"Apartment\">Apartment<\/option><\/select><\/span><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-budget\">Budget<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><span class=\"zf-select\"><select id=\"zf1-budget\" name=\"budget\" required ><option value=\"\" selected disabled selected>Budget<\/option><option value=\"between 700.000-1.000.000 Euro\">700.000 \u2013 1.000.000 \u20ac<\/option><option value=\"between 1.000.000-1.500.000 Euro\">1.000.000 \u2013 1.500.000 \u20ac<\/option><option value=\"&gt;1.500.000 Euro\">Over 1.500.000 \u20ac<\/option><\/select><\/span><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-bedrooms\">Bedrooms<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><span class=\"zf-select\"><select id=\"zf1-bedrooms\" name=\"bedrooms\" required ><option value=\"\" selected disabled selected>Bedrooms<\/option><option value=\"Studio\">Studio<\/option><option value=\"1\">1 bedroom<\/option><option value=\"2\">2 bedrooms<\/option><option value=\"3\">3 bedrooms<\/option><option value=\"4\">4 bedrooms<\/option><option value=\"5+\">5 or more<\/option><\/select><\/span><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-timeline\">Moving timeline<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><span class=\"zf-select\"><select id=\"zf1-timeline\" name=\"timeline\" required ><option value=\"\" selected disabled selected>When to move<\/option><option value=\"Immediate (0-3 months)\">Within 3 months<\/option><option value=\"Soon (3-6 months)\">In 3 to 6 months<\/option><option value=\"Flexible (6-12 months)\">In 6 to 12 months<\/option><\/select><\/span><span class=\"zf-err\" hidden><\/span><\/div><\/div><p class=\"zf-kicker\">Where we reach you<\/p><div class=\"zf-row zf-row--5\"><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-firstName\">First name<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><input type=\"text\" id=\"zf1-firstName\" name=\"firstName\" required placeholder=\"First name\" autocomplete=\"given-name\" ><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-lastName\">Last name<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><input type=\"text\" id=\"zf1-lastName\" name=\"lastName\" required placeholder=\"Last name\" autocomplete=\"family-name\" ><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-phone\">Mobile number<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><input type=\"tel\" id=\"zf1-phone\" name=\"phone\" required placeholder=\"Mobile number\" autocomplete=\"tel\" inputmode=\"tel\" ><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-field\"><label class=\"zf-label zf-sr\" for=\"zf1-email\">Email address<span class=\"zf-req\" aria-hidden=\"true\"> *<\/span><\/label><input type=\"email\" id=\"zf1-email\" name=\"email\" required placeholder=\"Email address\" autocomplete=\"email\" inputmode=\"email\" spellcheck=\"false\" autocapitalize=\"off\" ><span class=\"zf-err\" hidden><\/span><\/div><div class=\"zf-actions\"><button type=\"submit\" class=\"zf-btn\"><span class=\"zf-btn-text\">Search property<\/span><svg class=\"zf-btn-arrow\" viewBox=\"0 0 20 20\" width=\"18\" height=\"18\" aria-hidden=\"true\"><path d=\"M4 10h11m-4-4 4 4-4 4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/button><\/div><\/div><p class=\"zf-note\"><svg viewBox=\"0 0 16 16\" width=\"13\" height=\"13\" aria-hidden=\"true\"><path d=\"M8 1.5 3 3.5v4c0 3 2.1 5.6 5 6.5 2.9-.9 5-3.5 5-6.5v-4l-5-2Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\"\/><\/svg><span>We use your details only to answer this request. <a href=\"\/en\/privacy-policy\/\">Privacy policy<\/a><\/span><\/p>\t<div class=\"zf-hp\" aria-hidden=\"true\" style=\"position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;\"><label>Leave this empty <input type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\"><\/label><\/div>\n\t<div class=\"zf-ts\" data-zf-ts><\/div>\n\t<p class=\"zf-status\" role=\"status\" aria-live=\"polite\" hidden><\/p>\n\t<div class=\"zf-msgs\" hidden style=\"display:none\">\n\t\t<span data-zf-msg=\"required\">Please fill in this field.<\/span>\n\t\t<span data-zf-msg=\"choose\">Please choose one.<\/span>\n\t\t<span data-zf-msg=\"email\">Please enter a valid email address.<\/span>\n\t\t<span data-zf-msg=\"phone\">Please enter a valid phone number, for example +352 691 123 456.<\/span>\n\t\t<span data-zf-msg=\"reach\">Please give an email address or a phone number for this person.<\/span>\n\t\t<span data-zf-msg=\"consent\">Please tick the box to confirm.<\/span>\n\t\t<span data-zf-msg=\"human\">Please confirm you are human, then send again.<\/span>\n\t\t<span data-zf-msg=\"fix\">Please check the highlighted fields.<\/span>\n\t\t<span data-zf-msg=\"sending\">Sending\u2026<\/span>\n\t\t<span data-zf-msg=\"busy\">Too many attempts from this connection. Please wait a few minutes, or call +352 691 624 645.<\/span>\n\t\t<span data-zf-msg=\"network\">Something went wrong and nothing was sent. Please try again, or call +352 691 624 645.<\/span>\n\t\t<span data-zf-msg=\"done-title\">Thank you, your search request is in.<\/span><span data-zf-msg=\"done-text\">Check your inbox: your confirmation email has the link to your buyer questionnaire.<\/span>\t<\/div>\n<\/form>\n\t\n      <p class=\"brief-form-note\">No spam. No cold calls. We'll be in touch within one business day.<\/p>\n      <p class=\"brief-tc-note\">* The success fee is 30% excl. VAT of the saving we achieve against the asking price when we first present the property, with a minimum of \u20ac3,000 excl. VAT. It is due once, on signature of the notarial deed. Full details on our <a href=\"\/en\/our-fees\/\" class=\"form-note-link\">fees page<\/a> and <a href=\"\/en\/terms-and-conditions\/\" class=\"form-note-link\">Terms &amp; Conditions<\/a>.<\/p>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     5 \u00b7 BUYER GUIDES\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"resources\">\n  <div class=\"wrap sps\">\n    <div class=\"section-hd\" style=\"margin-bottom:var(--space-lg)\">\n      <p class=\"eyebrow center\">Buyer guides<\/p>\n      <h2 class=\"stitle center\">Everything you need to buy with confidence<\/h2>\n    <\/div>\n    <div style=\"text-align:center; margin-bottom:var(--space-lg)\">\n      <button class=\"proc-toggle\" id=\"resToggle\">\n        <span class=\"proc-toggle-label\">Open the buyer's toolkit<\/span>\n        <svg class=\"proc-toggle-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n      <\/button>\n    <\/div>\n    <div class=\"process-grid-wrap\" id=\"resGrid\">\n      <div class=\"res-grid\">\n\n        <a href=\"\/en\/property-buying-process-in-luxembourg\/\" class=\"rcard\">\n          <svg class=\"rc-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"\/><\/svg>\n          <h4>The property buying process<\/h4>\n          <p>A step-by-step walkthrough of buying property in Luxembourg \u2014 from offer and compromis de vente through the suspensive financing clause to signing the acte de vente at the notary.<\/p>\n          <span class=\"rc-link\">Read guide \u2192<\/span>\n        <\/a>\n\n        <a href=\"\/en\/energy-performance-certificate-luxembourg\/\" class=\"rcard\">\n          <svg class=\"rc-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M13 2L3 14h9l-1 8 10-12h-9l1-8z\"\/><\/svg>\n          <h4>Energy performance certificates<\/h4>\n          <p>How to read Luxembourg's passeport \u00e9nerg\u00e9tique, what each class means for renovation costs, and how energy rating affects the price you should pay \u2014 and the resale value you'll get.<\/p>\n          <span class=\"rc-link\">Read guide \u2192<\/span>\n        <\/a>\n\n        <a href=\"\/en\/tax-optimization-luxembourg-property\/\" class=\"rcard\">\n          <svg class=\"rc-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z\"\/><\/svg>\n          <h4>Tax optimisation for buyers<\/h4>\n          <p>How to legally reduce your tax burden when buying in Luxembourg \u2014 B\u00ebllegen Akt, interest deductions, amortisation allowances, and timing strategies that can save you thousands at closing.<\/p>\n          <span class=\"rc-link\">Read guide \u2192<\/span>\n        <\/a>\n\n        <a href=\"\/en\/avoidable-costs-buying-property-in-luxembourg\/\" class=\"rcard\">\n          <svg class=\"rc-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z\"\/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"13\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/><\/svg>\n          <h4>Avoidable costs when buying<\/h4>\n          <p>The fees most buyers don't anticipate \u2014 double agency commissions, overlooked notary charges, and transaction traps \u2014 and how to avoid overpaying at every stage of the purchase.<\/p>\n          <span class=\"rc-link\">Read guide \u2192<\/span>\n        <\/a>\n\n        <a href=\"\/en\/old-vs-new-property-luxembourg\" class=\"rcard\">\n          <svg class=\"rc-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z\"\/><polyline points=\"9 22 9 12 15 12 15 22\"\/><\/svg>\n          <h4>Old vs new property<\/h4>\n          <p>The real trade-offs between existing and new-build property in Luxembourg \u2014 acquisition costs, VAT treatment, renovation risk, energy standards, and which makes more financial sense for your situation.<\/p>\n          <span class=\"rc-link\">Read comparison \u2192<\/span>\n        <\/a>\n\n        <a href=\"\/en\/financing-property-in-luxembourg\/\" class=\"rcard\">\n          <svg class=\"rc-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><rect x=\"2\" y=\"7\" width=\"20\" height=\"14\" rx=\"2\"\/><path d=\"M16 7V5a2 2 0 00-2-2h-4a2 2 0 00-2 2v2m4 6v2m-6-2h12\"\/><\/svg>\n          <h4>Financing property in Luxembourg<\/h4>\n          <p>How mortgages work for buyers in Luxembourg \u2014 loan-to-value ratios, stress test rules, fixed vs variable rates, required equity, and how to secure pre-approval before you start your search.<\/p>\n          <span class=\"rc-link\">Read guide \u2192<\/span>\n        <\/a>\n\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     6 \u00b7 FAQ\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<!-- COMPACT SERVICE STRIP -->\n<section class=\"svc-strip\">\n  <div class=\"wrap\">\n    <div class=\"strip-hd\">\n      <p class=\"eyebrow center\">Our services<\/p>\n      <h2 class=\"stitle ctr\"><em style=\"font-style:normal;color:#FF5C0B\">Buying.<\/em> Selling. Renting.<\/h2>\n    <\/div>\n    <div class=\"cards-2\">\n\n      <a href=\"\/en\/sell-property\/\" class=\"svc-card-compact light\">\n        <div class=\"scc-tag\">Seller's Agent \u00b7 Hesperange<\/div>\n        <div class=\"scc-title\">Sell in Hesperange.<br><em>Price it right.<\/em><\/div>\n        <p class=\"scc-desc\">One mandate per village. Asking price backed by notarial transaction data. No exclusivity contract required to get started.<\/p>\n        <span class=\"scc-cta\">Read the seller's guide <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg><\/span>\n      <\/a>\n\n      <a href=\"\/en\/rent-property-hesperange\/\" class=\"svc-card-compact mid\">\n        <div class=\"scc-tag\">Landlord \u00b7 Hesperange<\/div>\n        <div class=\"scc-title\" style=\"color:#f5f3ef\">Rent out in Hesperange.<br><em>Peace of mind included.<\/em><\/div>\n        <p class=\"scc-desc\" style=\"color:#e0ddd8\">Verified and screened tenants, a thorough property handover record, and ongoing support \u2014 fewer unexpected surprises from day one.<\/p>\n        <span class=\"scc-cta\">Read the landlord's guide <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg><\/span>\n      <\/a>\n\n    <\/div>\n  <\/div>\n<\/section>\n\n\n<section class=\"faq\">\n  <div class=\"wrap sps\">\n    <div class=\"section-hd\" style=\"margin-bottom:var(--space-xl)\">\n      <p class=\"eyebrow center\">FAQ<\/p>\n      <h2 class=\"stitle center\">Common questions about buying in Hesperange<\/h2>\n    <\/div>\n    <div class=\"faq-cols\">\n\n      <div>\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            How do your buyer's agent fees work?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>If you don't buy, you pay nothing. Nothing is due when you sign the mandate. If you buy, at the notarial deed you pay 30% of the saving we negotiate against the asking price, excl. VAT, with a minimum of \u20ac3,000 excl. VAT. See our <a href=\"\/en\/our-fees\/\">fees page<\/a> for full details.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            What if I don't want to pay a buyer's fee?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>On selected properties, the seller's agent may share their commission with us. We'll always tell you in writing when that's the case. Our help is then limited to that property, and you should know our fee comes from the seller's side. Whichever you choose, we are never paid by both the buyer and the seller on the same purchase. <a href=\"#two-ways\">See both options<\/a>.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            Do I need a buyer's agent if I already found a property?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>Yes \u2014 most of our value comes from negotiation and transaction support. We analyse comparable sales, identify negotiation leverage, and guide you through the Luxembourg legal process. Many buyers save more in negotiation than they pay in fees.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            Which villages in Hesperange do you cover?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>All five: Howald, Alzingen, Itzig, Fentange, and Hesperange village. We hold transaction data for every street and maintain active market intelligence across the entire commune.<\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div>\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            How long does a property search typically take?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>It varies. Some buyers find their property within weeks; others take several months. Market conditions, your brief, and budget all play a role. We keep you updated on new listings weekly and adjust strategy as the market shifts.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            What documents do I need to buy property in Luxembourg?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>You'll need ID, proof of address, mortgage pre-approval (if financing), and proof of funds. From the seller, request the title deed, energy performance certificate, co-ownership documents (if applicable), and planning permissions. See our <a href=\"\/en\/property-buying-process-in-luxembourg\/\">buying process guide<\/a> for a full walkthrough.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"faq-item\">\n          <button class=\"faq-q\">\n            Can you help if I'm buying from outside Luxembourg?\n            <svg class=\"faq-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M12 5v14M5 12h14\"\/><\/svg>\n          <\/button>\n          <div class=\"faq-a\">\n            <p>Absolutely. We work with international buyers regularly \u2014 video property tours, remote signing options, and clear guidance on Luxembourg's legal process. We coordinate with notaries, banks, and other professionals to make the process seamless.<\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     7 \u00b7 REFERRAL\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"referral\">\n  <div class=\"wrap sp\">\n    <div class=\"ref-inner\">\n      <div>\n        <p class=\"ref-eyebrow\">Referral programme<\/p>\n        <h2 class=\"ref-title\">Know someone buying in Hesperange?<\/h2>\n        <p class=\"ref-sub\">Refer a buyer and earn <strong>\u20ac1,000<\/strong> when they complete a purchase with us.<\/p>\n      <\/div>\n      <div>\n        <a href=\"\/en\/referral\/\" class=\"btn-ghost-dark\">Send a referral<\/a>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script data-cfasync=\"false\" src=\"\/cdn-cgi\/scripts\/5c5dd728\/cloudflare-static\/email-decode.min.js\"><\/script><script>\n\/\/ Process toggle\ndocument.getElementById('procToggle').addEventListener('click', function() {\n  this.classList.toggle('open');\n  document.getElementById('processGrid').classList.toggle('open');\n});\n\n\/\/ Resources toggle\ndocument.getElementById('resToggle').addEventListener('click', function() {\n  this.classList.toggle('open');\n  document.getElementById('resGrid').classList.toggle('open');\n});\n\n\/\/ FAQ accordion\ndocument.querySelectorAll('.faq-q').forEach(function(btn) {\n  btn.addEventListener('click', function() {\n    var item = this.closest('.faq-item');\n    item.classList.toggle('open');\n  });\n});\n<\/script>\n<script>\n\/* Buyer savings calculator (22 Oct 2026). Nothing leaves the page. *\/\n(function () {\n  var $ = function (id) { return document.getElementById(id); };\n  if (!$('sc-cols')) return;\n  var FEE_PCT = 0.30, FEE_MIN = 3000, VAT = 0.17;\n  var SCEN = [{ k: 'Cautious', p: 0.01 }, { k: 'Typical', p: 0.02 }, { k: 'Strong', p: 0.03 }];\n  var st = { type: 'apartment', know: 'no' };\n  var DEF = {\n    search: { yes: 20, no: 30 },\n    view:   { apartment: 1.5, house: 2 },\n    docs:   { apartment: 6, house: 3 }\n  };\n  var touched = {};\n  function num(v) { var n = parseFloat(String(v).replace(\/[^\\d.]\/g, '')); return isFinite(n) ? n : 0; }\n  function eur(n) { var s = Math.round(Math.abs(n)).toLocaleString('en-GB'); return (n < 0 ? '\u2212' : '') + '\u20ac' + s; }\n  function setDefaults() {\n    if (!touched['sc-h-search']) $('sc-h-search').value = DEF.search[st.know];\n    if (!touched['sc-h-view'])   $('sc-h-view').value   = DEF.view[st.type];\n    if (!touched['sc-h-docs'])   $('sc-h-docs').value   = DEF.docs[st.type];\n  }\n  function line(label, val, neg) { return '<div class=\"sc-l' + (neg ? ' neg' : '') + '\"><span>' + label + '<\/span><b>' + val + '<\/b><\/div>'; }\n  function calc() {\n    var price = num($('sc-price').value), income = num($('sc-income').value);\n    var hm = Math.max(1, num($('sc-hm').value));\n    var rate = income \/ hm;\n    var hours = num($('sc-h-search').value) + num($('sc-h-contact').value)\n              + num($('sc-n-view').value) * num($('sc-h-view').value)\n              + num($('sc-h-docs').value) + num($('sc-h-neg').value);\n    var timeVal = hours * rate;\n    var anyNeg = false;\n    $('sc-cols').innerHTML = SCEN.map(function (s, i) {\n      var saving = price * s.p;\n      var feeEx = Math.max(saving * FEE_PCT, FEE_MIN);\n      var feeInc = feeEx * (1 + VAT);\n      var net = saving - feeInc;\n      var total = net + timeVal;\n      if (net < 0) anyNeg = true;\n      return '<div class=\"sc-col' + (i === 1 ? ' mid' : '') + '\">'\n        + '<h3>' + s.k + '<\/h3><div class=\"sc-pct\">' + (s.p * 100) + '% below asking<\/div>'\n        + line('Saved in negotiation', eur(saving))\n        + line('Our fee excl. VAT' + (feeEx === FEE_MIN ? ' (minimum)' : ''), '\u2212' + eur(feeEx))\n        + line('VAT 17%', '\u2212' + eur(feeEx * VAT))\n        + line('You keep', eur(net), net < 0)\n        + line('Your time back (' + Math.round(hours) + ' h)', '+' + eur(timeVal))\n        + '<div class=\"sc-tot\"><div class=\"sc-tl\">Total benefit<\/div><div class=\"sc-tv' + (total < 0 ? ' neg' : '') + '\">' + eur(total) + '<\/div><\/div>'\n        + '<\/div>';\n    }).join('');\n    var w = $('sc-warn');\n    if (anyNeg && price > 0) {\n      var breakEven = Math.round(FEE_MIN * (1 + VAT) \/ 0.01 \/ 1000) * 1000;\n      w.innerHTML = 'At this price, our &euro;3,000 minimum fee can be more than a small saving. Below about ' + eur(breakEven)\n        + ', a 1% saving doesn\\'t cover the fee on its own. We\\'d rather tell you that now, and talk about whether we\\'re the right fit.';\n      w.hidden = false;\n    } else { w.hidden = true; }\n  }\n  document.querySelectorAll('[data-sc-type]').forEach(function (b) {\n    b.addEventListener('click', function () {\n      st.type = b.getAttribute('data-sc-type');\n      document.querySelectorAll('[data-sc-type]').forEach(function (x) { x.classList.toggle('on', x === b); });\n      setDefaults(); calc();\n    });\n  });\n  document.querySelectorAll('[data-sc-know]').forEach(function (b) {\n    b.addEventListener('click', function () {\n      st.know = b.getAttribute('data-sc-know');\n      document.querySelectorAll('[data-sc-know]').forEach(function (x) { x.classList.toggle('on', x === b); });\n      setDefaults(); calc();\n    });\n  });\n  ['sc-price', 'sc-income'].forEach(function (id) {\n    var el = $(id);\n    el.addEventListener('input', calc);\n    el.addEventListener('blur', function () { var n = num(el.value); el.value = n ? n.toLocaleString('en-GB') : ''; });\n  });\n  ['sc-hm', 'sc-h-search', 'sc-h-contact', 'sc-n-view', 'sc-h-view', 'sc-h-docs', 'sc-h-neg'].forEach(function (id) {\n    $(id).addEventListener('input', function () { touched[id] = true; calc(); });\n  });\n  setDefaults(); calc();\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Buy Property in Hesperange | Buyer&#8217;s Agent \u2014 zeas.immo Hesperange Commune \u00b7 Buyer&#8217;s Agent You&#8217;re negotiating against the seller&#8217;s agent. In Luxembourg, the agent at the table works for the seller \u2014 not for you.When you give us a buying mandate, your interests are the only ones we represent \u2014 no conflict, no hidden commissions, [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-27510","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/pages\/27510","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/comments?post=27510"}],"version-history":[{"count":3,"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/pages\/27510\/revisions"}],"predecessor-version":[{"id":51405,"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/pages\/27510\/revisions\/51405"}],"wp:attachment":[{"href":"https:\/\/zeas.immo\/fr\/wp-json\/wp\/v2\/media?parent=27510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}