2026-07-05 06:41:32 +00:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "UTF-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
< title > Pilot Programme — Landvex< / title >
< meta name = "description" content = "A Landvex pilot answers one specific question, in one defined geography, in 6– 8 weeks. Fixed scope. Fixed cost. Starting from EUR 15,000." >
< link rel = "canonical" href = "https://www.landvex.com/pilot/" >
< meta name = "robots" content = "index, follow" >
< meta property = "og:type" content = "website" >
< meta property = "og:url" content = "https://www.landvex.com/pilot/" >
< meta property = "og:title" content = "Pilot Programme — Landvex" >
< meta property = "og:description" content = "A Landvex pilot answers one specific question, in one defined geography, in 6– 8 weeks. Fixed scope. Fixed cost. Starting from EUR 15,000." >
< meta property = "og:image" content = "https://www.landvex.com/og-image.jpg" >
< meta name = "twitter:card" content = "summary_large_image" >
< meta name = "twitter:title" content = "Pilot Programme — Landvex" >
< meta name = "twitter:description" content = "A Landvex pilot answers one specific question, in one defined geography, in 6– 8 weeks. Fixed scope. Fixed cost. Starting from EUR 15,000." >
< meta name = "twitter:image" content = "https://www.landvex.com/og-image.jpg" >
< link rel = "icon" type = "image/svg+xml" href = "/favicon.svg" >
< link rel = "icon" type = "image/x-icon" href = "/favicon.ico" >
< link rel = "apple-touch-icon" href = "/apple-touch-icon.png" >
< link rel = "manifest" href = "/site.webmanifest" >
< style >
* , * :: before , * :: after { box-sizing : border-box ; margin : 0 ; padding : 0 ; }
: root {
--bg-dark : #f5f5f7 ;
--blue : #0066FF ;
--blue-dark : #0052CC ;
--blue-glow : rgba ( 0 , 102 , 255 , 0.15 ) ;
--text-light : #1d1d1f ;
--text-muted : #6B6B6B ;
--text-dim : #6B6B6B ;
--surface : #ffffff ;
--surface-2 : #f5f5f7 ;
--border : rgba ( 0 , 0 , 0 , 0.08 ) ;
--radius-sm : 8 px ;
--radius-md : 14 px ;
--radius-lg : 24 px ;
}
html { scroll-behavior : smooth ; }
body {
font-family : - apple-system , BlinkMacSystemFont , 'Inter' , 'Helvetica Neue' , sans-serif ;
background : var ( - - bg - dark ) ;
color : var ( - - text - light ) ;
line-height : 1.6 ;
-webkit- font-smoothing : antialiased ;
}
a { color : inherit ; text-decoration : none ; }
/* NAV */
nav {
position : fixed ; top : 0 ; left : 0 ; right : 0 ; z-index : 100 ;
display : flex ; align-items : center ; justify-content : space-between ;
padding : 0 40 px ; height : 64 px ;
2026-07-08 19:56:03 +00:00
background : rgba ( 255 , 255 , 255 , 0.88 ) ;
2026-07-05 06:41:32 +00:00
backdrop-filter : blur ( 16 px ) ; -webkit- backdrop-filter : blur ( 16 px ) ;
border-bottom : 1 px solid var ( - - border ) ;
}
. nav-logo {
font-size : 18 px ;
font-weight : 700 ;
letter-spacing : -0.3 px ;
color : #1d1d1f ; }
. nav-links { display : flex ; gap : 32 px ; list-style : none ; }
. nav-links a { font-size : 14 px ; color : var ( - - text - dim ) ; transition : color 0.2 s ; }
. nav-links a : hover , . nav-links a . active { color : #1d1d1f ; }
. nav-dropdown { position : relative ; }
. nav-dropdown > a { display : flex ; align-items : center ; gap : 4 px ; cursor : pointer ; }
. nav-dropdown > a :: after {
content : '' ; display : inline-block ; width : 0 ; height : 0 ;
border-left : 4 px solid transparent ; border-right : 4 px solid transparent ;
border-top : 4 px solid currentColor ;
opacity : 0.55 ; margin-top : 1 px ; transition : transform 0.2 s ;
}
. nav-dropdown : hover > a :: after , . nav-dropdown : focus-within > a :: after { transform : rotate ( 180 deg ) ; }
. nav-dropdown-menu {
display : none ; position : absolute ; top : calc ( 100 % + 12 px ) ; left : 50 % ;
transform : translateX ( -50 % ) ;
2026-07-12 12:41:35 +00:00
background : rgba ( 255 , 255 , 255 , 0.98 ) ; border : 1 px solid var ( - - border ) ;
2026-07-05 06:41:32 +00:00
border-radius : var ( - - radius - md ) ; padding : 8 px 0 ; min-width : 200 px ;
box-shadow : 0 16 px 40 px rgba ( 0 , 0 , 0 , 0.5 ) ; z-index : 200 ;
backdrop-filter : blur ( 12 px ) ;
}
. nav-dropdown : hover . nav-dropdown-menu ,
. nav-dropdown : focus-within . nav-dropdown-menu { display : block ; }
2026-07-12 12:41:35 +00:00
. nav-dropdown-menu a { color : #333333 ;
2026-07-05 06:41:32 +00:00
display : flex ; align-items : center ; gap : 10 px ;
padding : 10 px 18 px ; font-size : 14 px ; color : var ( - - text - dim ) ;
transition : color 0.15 s , background 0.15 s ; white-space : nowrap ;
}
2026-07-12 12:41:35 +00:00
. nav-dropdown-menu a : hover { color : #000000 ; background : rgba ( 0 , 0 , 0 , 0.03 ) ; }
2026-07-05 06:41:32 +00:00
. nav-dropdown-menu . dd-label {
font-size : 10 px ; font-weight : 700 ; letter-spacing : 0.1 em ;
2026-07-12 12:41:35 +00:00
text-transform : uppercase ; color : rgba ( 0 , 0 , 0 , 0.6 ) ;
2026-07-05 06:41:32 +00:00
padding : 8 px 18 px 4 px ; cursor : default ;
}
. nav-dropdown-menu hr { border : none ; border-top : 1 px solid var ( - - border ) ; margin : 6 px 0 ; }
. btn {
display : inline-flex ; align-items : center ; gap : 6 px ;
padding : 10 px 22 px ; background : var ( - - blue ) ; color : #1d1d1f ;
font-size : 14 px ; font-weight : 600 ; border-radius : var ( - - radius - md ) ;
border : none ; cursor : pointer ; transition : background 0.2 s , transform 0.15 s ;
}
. btn : hover { background : var ( - - blue - dark ) ; transform : translateY ( -1 px ) ; }
. btn-outline {
background : transparent ; border : 1.5 px solid rgba ( 0 , 0 , 0 , 0.18 ) ; color : var ( - - text - light ) ;
}
. btn-outline : hover { background : rgba ( 0 , 0 , 0 , 0.04 ) ; transform : translateY ( -1 px ) ; }
. btn-lg { padding : 14 px 30 px ; font-size : 16 px ; }
/* HERO */
. hero {
min-height : 70 vh ; display : flex ; flex-direction : column ;
align-items : center ; justify-content : center ;
text-align : center ; padding : 140 px 24 px 80 px ;
position : relative ; overflow : hidden ;
}
. hero :: before {
content : '' ; position : absolute ; top : -200 px ; left : 50 % ; transform : translateX ( -50 % ) ;
width : 900 px ; height : 600 px ;
background : radial-gradient ( ellipse at center , rgba ( 0 , 102 , 255 , 0.10 ) 0 % , transparent 70 % ) ;
pointer-events : none ;
}
. hero-eyebrow {
display : inline-flex ; align-items : center ; gap : 8 px ;
background : rgba ( 0 , 102 , 255 , 0.1 ) ; border : 1 px solid rgba ( 0 , 102 , 255 , 0.25 ) ;
color : #5599ff ; font-size : 12 px ; font-weight : 600 ;
letter-spacing : 0.08 em ; text-transform : uppercase ;
padding : 6 px 16 px ; border-radius : 100 px ; margin-bottom : 28 px ;
}
. hero h1 {
font-size : clamp ( 40 px , 6 vw , 72 px ) ; font-weight : 800 ;
letter-spacing : -2 px ; line-height : 1.05 ; color : #1d1d1f ;
max-width : 760 px ; margin-bottom : 20 px ;
}
. hero-sub {
font-size : clamp ( 16 px , 2 vw , 20 px ) ; color : var ( - - text - dim ) ;
max-width : 600 px ; line-height : 1.65 ; margin-bottom : 12 px ;
}
. hero-constraints {
2026-07-12 12:41:35 +00:00
font-size : 14 px ; color : rgba ( 0 , 0 , 0 , 0.6 ) ;
2026-07-05 06:41:32 +00:00
letter-spacing : 0.03 em ; margin-bottom : 40 px ;
}
. hero-ctas { display : flex ; gap : 14 px ; flex-wrap : wrap ; justify-content : center ; }
@ media ( max-width : 900px ) {
nav { padding : 0 20 px ; }
. nav-links { display : none ; }
. process-steps { grid-template-columns : repeat ( 2 , 1 fr ) ; gap : 32 px ; }
. process-steps :: before { display : none ; }
. deliverables-grid { grid-template-columns : 1 fr ; }
. questions-grid { grid-template-columns : 1 fr ; }
}
@ media ( max-width : 600px ) {
. container { padding : 0 16 px !important ; box-sizing : border-box ; }
section { padding : 48 px 0 !important ; }
. hero { padding : 100 px 20 px 60 px !important ; }
. hero h1 { letter-spacing : -1 px ; }
. hero-ctas { flex-direction : column !important ; gap : 12 px !important ; }
. hero-ctas a { width : 100 % !important ; text-align : center !important ; }
. process-steps { grid-template-columns : 1 fr !important ; gap : 24 px !important ; }
. process-steps :: before { display : none ; }
. deliverables-grid { grid-template-columns : 1 fr !important ; }
. questions-grid { grid-template-columns : 1 fr !important ; }
. pricing-card { padding : 28 px 20 px !important ; }
. cta-banner { padding : 32 px 20 px !important ; }
. contact-form { padding : 24 px 16 px !important ; }
. form-row { grid-template-columns : 1 fr !important ; }
. footer-inner { flex-direction : column ; text-align : center ; }
}
/* SECTIONS */
section { padding : 96 px 24 px ; }
. section-alt { background : var ( - - surface ) ; }
. container { max-width : 1140 px ; margin : 0 auto ; }
. section-label {
font-size : 12 px ; font-weight : 700 ; letter-spacing : 0.1 em ;
text-transform : uppercase ; color : var ( - - blue ) ; margin-bottom : 16 px ;
}
. section-title {
font-size : clamp ( 26 px , 3.5 vw , 42 px ) ; font-weight : 800 ;
letter-spacing : -1.2 px ; line-height : 1.1 ; color : #1d1d1f ; margin-bottom : 16 px ;
}
. section-sub { font-size : 17 px ; color : var ( - - text - dim ) ; max-width : 560 px ; line-height : 1.7 ; }
. section-header { margin-bottom : 56 px ; }
. section-header-center { text-align : center ; }
. section-header-center . section-sub { margin : 0 auto ; }
/* PROCESS STEPS */
. process-steps {
display : grid ; grid-template-columns : repeat ( 4 , 1 fr ) ;
gap : 0 ; position : relative ;
}
. process-steps :: before {
content : '' ; position : absolute ;
top : 27 px ; left : 12.5 % ; right : 12.5 % ; height : 1 px ;
background : linear-gradient ( 90 deg , transparent , var ( - - blue ) 20 % , var ( - - blue ) 80 % , transparent ) ;
opacity : 0.25 ;
}
. process-step { text-align : center ; padding : 0 20 px ; position : relative ; }
. step-num {
2026-07-07 07:11:50 +00:00
width : 54 px ; height : 54 px ; border-radius : var ( - - radius - full ) ;
2026-07-05 06:41:32 +00:00
background : var ( - - blue - glow ) ; border : 2 px solid var ( - - blue ) ;
display : flex ; align-items : center ; justify-content : center ;
font-size : 17 px ; font-weight : 800 ; color : var ( - - blue ) ;
margin : 0 auto 24 px ; position : relative ; z-index : 1 ;
}
. process-step h3 { font-size : 15 px ; font-weight : 700 ; color : #1d1d1f ; margin-bottom : 8 px ; }
. process-step p { font-size : 14 px ; color : var ( - - text - dim ) ; line-height : 1.6 ; }
. process-step . step-detail {
display : inline-block ; margin-top : 10 px ;
2026-07-12 12:41:35 +00:00
font-size : 12 px ; font-weight : 600 ; color : rgba ( 0 , 0 , 0 , 0.6 ) ;
2026-07-05 06:41:32 +00:00
font-style : italic ;
}
/* DELIVERABLES */
. deliverables-grid { display : grid ; grid-template-columns : repeat ( 2 , 1 fr ) ; gap : 20 px ; }
. deliverable-item {
display : flex ; align-items : flex-start ; gap : 16 px ;
background : var ( - - surface -2 ) ; border : 1 px solid var ( - - border ) ;
border-radius : var ( - - radius - md ) ; padding : 24 px ;
transition : border-color 0.2 s ;
}
. deliverable-item : hover { border-color : rgba ( 0 , 102 , 255 , 0.3 ) ; }
. deliverable-icon {
width : 40 px ; height : 40 px ; flex-shrink : 0 ;
background : var ( - - blue - glow ) ; border : 1 px solid rgba ( 0 , 102 , 255 , 0.2 ) ;
border-radius : var ( - - radius - sm ) ; display : flex ; align-items : center ; justify-content : center ;
}
. deliverable-item h4 { font-size : 15 px ; font-weight : 700 ; color : #1d1d1f ; margin-bottom : 4 px ; }
. deliverable-item p { font-size : 13 px ; color : var ( - - text - dim ) ; line-height : 1.5 ; }
/* TYPICAL QUESTIONS */
. questions-grid { display : grid ; grid-template-columns : repeat ( 2 , 1 fr ) ; gap : 16 px ; }
. question-card {
background : var ( - - surface -2 ) ; border : 1 px solid var ( - - border ) ;
border-radius : var ( - - radius - md ) ; padding : 20 px 24 px ;
display : flex ; align-items : flex-start ; gap : 12 px ;
transition : border-color 0.2 s ;
}
. question-card : hover { border-color : rgba ( 0 , 102 , 255 , 0.3 ) ; }
. question-mark {
font-size : 20 px ; font-weight : 800 ; color : var ( - - blue ) ;
flex-shrink : 0 ; line-height : 1.3 ;
}
. question-card p { font-size : 15 px ; color : var ( - - text - light ) ; font-weight : 500 ; line-height : 1.4 ; }
/* PRICING */
. pricing-card {
max-width : 560 px ; margin : 0 auto ;
background : var ( - - surface -2 ) ; border : 1 px solid rgba ( 0 , 102 , 255 , 0.3 ) ;
border-radius : var ( - - radius - lg ) ; padding : 48 px ;
text-align : center ;
}
. pricing-card . pricing-from {
font-size : 13 px ; font-weight : 700 ; letter-spacing : 0.08 em ;
text-transform : uppercase ; color : #5599ff ; margin-bottom : 8 px ;
}
. pricing-card . pricing-amount {
font-size : clamp ( 44 px , 7 vw , 72 px ) ; font-weight : 800 ;
letter-spacing : -2 px ; color : #1d1d1f ; line-height : 1 ;
margin-bottom : 8 px ;
}
. pricing-card . pricing-note {
font-size : 15 px ; color : var ( - - text - dim ) ; margin-bottom : 24 px ;
}
. pricing-includes {
display : flex ; flex-direction : column ; gap : 10 px ;
text-align : left ; margin-bottom : 32 px ;
}
. pricing-includes-item {
display : flex ; align-items : center ; gap : 10 px ;
font-size : 14 px ; color : rgba ( 0 , 0 , 0 , 0.7 ) ;
}
. pricing-includes-item svg { flex-shrink : 0 ; color : var ( - - blue ) ; }
/* DARK CTA BANNER */
. cta-banner {
background : #0a0f1a ; border : 1 px solid rgba ( 0 , 102 , 255 , 0.2 ) ;
border-radius : var ( - - radius - lg ) ; padding : 64 px 56 px ;
text-align : center ; position : relative ; overflow : hidden ;
}
. cta-banner :: before {
content : '' ; position : absolute ; top : -100 px ; left : 50 % ; transform : translateX ( -50 % ) ;
width : 600 px ; height : 300 px ;
background : radial-gradient ( ellipse , rgba ( 0 , 102 , 255 , 0.12 ) 0 % , transparent 70 % ) ;
pointer-events : none ;
}
. cta-banner . cta-label {
font-size : 12 px ; font-weight : 700 ; letter-spacing : 0.1 em ;
text-transform : uppercase ; color : #5599ff ; margin-bottom : 16 px ;
}
. cta-banner h2 {
font-size : clamp ( 28 px , 4 vw , 44 px ) ; font-weight : 800 ;
letter-spacing : -1 px ; color : #1d1d1f ; margin-bottom : 16 px ;
}
. cta-banner p {
font-size : 16 px ; color : var ( - - text - dim ) ;
max-width : 480 px ; margin : 0 auto 32 px ; line-height : 1.65 ;
}
/* CONTACT */
. contact-wrapper { max-width : 680 px ; margin : 0 auto ; text-align : center ; }
. contact-form {
background : var ( - - surface ) ; border : 1 px solid var ( - - border ) ;
border-radius : var ( - - radius - lg ) ; padding : 40 px ; text-align : left ;
}
. form-row { display : grid ; grid-template-columns : 1 fr 1 fr ; gap : 16 px ; margin-bottom : 16 px ; }
. form-group { display : flex ; flex-direction : column ; gap : 8 px ; margin-bottom : 16 px ; }
. form-group label { font-size : 13 px ; font-weight : 600 ; color : var ( - - text - dim ) ; }
. form-group input , . form-group textarea , . form-group select {
background : var ( - - bg - dark ) ; border : 1.5 px solid var ( - - border ) ;
border-radius : var ( - - radius - md ) ; color : #1d1d1f ;
font-size : 15 px ; font-family : inherit ;
padding : 12 px 16 px ; outline : none ; transition : border-color 0.2 s ; width : 100 % ;
}
. form-group select option { background : #f5f5f7 ; }
. form-group input : focus , . form-group textarea : focus , . form-group select : focus { border-color : var ( - - blue ) ; }
. form-group input :: placeholder , . form-group textarea :: placeholder { color : var ( - - text - muted ) ; }
. form-group textarea { min-height : 120 px ; resize : vertical ; }
. form-note { font-size : 12 px ; color : var ( - - text - muted ) ; margin-top : 12 px ; text-align : center ; }
# form-message {
display : none ; padding : 14 px 20 px ; border-radius : var ( - - radius - md ) ;
font-size : 14 px ; font-weight : 600 ; text-align : center ; margin-top : 16 px ;
}
# form-message . success { background : rgba ( 0 , 200 , 80 , 0.1 ) ; border : 1 px solid rgba ( 0 , 200 , 80 , 0.25 ) ; color : #4ade80 ; }
# form-message . error { background : rgba ( 255 , 60 , 60 , 0.1 ) ; border : 1 px solid rgba ( 255 , 60 , 60 , 0.25 ) ; color : #f87171 ; }
/* FOOTER */
footer { border-top : 1 px solid var ( - - border ) ; padding : 40 px ; }
. footer-inner {
max-width : 1140 px ; margin : 0 auto ;
display : flex ; align-items : center ; justify-content : space-between ;
flex-wrap : wrap ; gap : 20 px ;
}
. footer-logo { font-size : 17 px ; font-weight : 700 ; color : #1d1d1f ; }
. footer-copy { font-size : 13 px ; color : var ( - - text - muted ) ; }
. footer-tagline { font-size : 12 px ; color : var ( - - text - muted ) ; margin-top : 4 px ; }
. footer-links { display : flex ; gap : 24 px ; align-items : center ; flex-wrap : wrap ; }
. footer-links a { font-size : 14 px ; color : var ( - - text - muted ) ; transition : color 0.2 s ; }
. footer-links a : hover { color : #1d1d1f ; }
. footer-social {
2026-07-07 07:11:50 +00:00
width : 32 px ; height : 32 px ; border : 1 px solid var ( - - border ) ; border-radius : var ( - - radius - md ) ;
2026-07-05 06:41:32 +00:00
display : flex ; align-items : center ; justify-content : center ;
transition : border-color 0.2 s , background 0.2 s ;
}
. footer-social : hover { border-color : rgba ( 0 , 0 , 0 , 0.25 ) ; background : rgba ( 0 , 0 , 0 , 0.04 ) ; }
svg { max-width : 100 % ; overflow : visible ; }
. deliverable-icon svg , . pricing-includes-item svg { overflow : hidden ; flex-shrink : 0 ; }
@ media ( max-width : 900px ) {
nav { padding : 0 20 px ; }
. nav-links { display : none ; }
. process-steps { grid-template-columns : 1 fr 1 fr ; gap : 32 px ; }
. process-steps :: before { display : none ; }
. questions-grid { grid-template-columns : 1 fr ; }
}
@ media ( max-width : 640px ) {
section { padding : 56 px 0 ; }
. hero { padding : 100 px 20 px 60 px ; }
. hero-ctas { flex-direction : column ; }
. deliverables-grid { grid-template-columns : 1 fr ; }
. form-row { grid-template-columns : 1 fr ; }
. contact-form { padding : 24 px 20 px ; }
. cta-banner { padding : 40 px 24 px ; }
. pricing-card { padding : 32 px 24 px ; }
. footer-inner { flex-direction : column ; text-align : center ; }
}
< / style >
< script type = "application/ld+json" >
{
"@context" : "https://schema.org" ,
"@type" : "BreadcrumbList" ,
"itemListElement" : [
{
"@type" : "ListItem" ,
"position" : 1 ,
"name" : "Landvex" ,
"item" : "https://www.landvex.com/"
} ,
{
"@type" : "ListItem" ,
"position" : 2 ,
"name" : "Pilot" ,
"item" : "https://www.landvex.com/pilot/"
}
]
}
< / script >
< link rel = "alternate" hreflang = "x-default" href = "https://www.landvex.com/" >
< link rel = "alternate" hreflang = "en" href = "https://www.landvex.com/" >
< link rel = "alternate" hreflang = "sv" href = "https://landvex.se/" >
< link rel = "alternate" hreflang = "de" href = "https://landvex.de/" >
< link rel = "alternate" hreflang = "fr" href = "https://landvex.fr/" >
< link rel = "alternate" hreflang = "en-GB" href = "https://landvex.co.uk/" >
< link rel = "alternate" hreflang = "it" href = "https://landvex.it/" >
< / head >
< body >
< nav aria-label = "breadcrumb" style = "padding: 10px 20px; color: rgba(235,235,245,0.6); font-size: 14px;" >
< a href = "/" style = "color: #007AFF; text-decoration: none;" > Home< / a > / < span > pilot< / span >
< / nav >
<!-- NAV -->
< nav >
< a class = "nav-logo" href = "/" > LandveX< / a >
< ul class = "nav-links" >
< li > < a href = "/#how-it-works" > How it works< / a > < / li >
< li > < a href = "/#verticals" > Verticals< / a > < / li >
< li class = "nav-dropdown" >
< a href = "/methodology/" > Intelligence< / a >
< div class = "nav-dropdown-menu" >
< div class = "dd-label" > Learn< / div >
< a href = "/methodology/" >
< svg width = "14" height = "14" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < path d = "M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z" / > < path d = "M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z" / > < / svg >
Methodology
< / a >
< hr / >
< div class = "dd-label" > Products< / div >
< a href = "/enterprise/" > Enterprise< / a >
< a href = "/reports/" > Intelligence Reports< / a >
< a href = "/pilot/" style = "color: #1d1d1f" > Pilot Programme< / a >
< hr / >
< a href = "/security/" >
< svg width = "14" height = "14" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < path d = "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" / > < / svg >
Security
< / a >
< / div >
< / li >
< li > < a href = "/enterprise/" > Enterprise< / a > < / li >
< li > < a href = "#contact" > Contact< / a > < / li >
< / ul >
< a class = "btn btn-outline" href = "#contact" > Book a pilot call< / a >
< / nav >
<!-- HERO -->
< section class = "hero" >
< div class = "hero-eyebrow" >
< svg width = "12" height = "12" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2.5" stroke-linecap = "round" stroke-linejoin = "round" > < circle cx = "12" cy = "12" r = "10" / > < polyline points = "12 6 12 12 16 14" / > < / svg >
Pilot Programme
< / div >
< h1 > Start with a pilot.< / h1 >
< p class = "hero-sub" > A Landvex pilot answers one specific question, in one defined geography, in 6 to 8 weeks.< / p >
< p class = "hero-constraints" > Fixed scope. Fixed cost.< / p >
< div class = "hero-ctas" >
< a class = "btn btn-lg" href = "#contact" > Book a pilot call< / a >
< a class = "btn btn-outline btn-lg" href = "/enterprise/" > Enterprise overview< / a >
< / div >
< / section >
<!-- HOW IT WORKS -->
< section class = "section-alt" >
< div class = "container" >
< div class = "section-header section-header-center" >
< div class = "section-label" > How it works< / div >
< h2 class = "section-title" > Four steps from brief to answer.< / h2 >
< p class = "section-sub" > Every pilot follows the same structure. No open-ended engagements. No scope creep.< / p >
< / div >
< div class = "process-steps" >
< div class = "process-step" >
< div class = "step-num" > 1< / div >
< h3 > Define the question< / h3 >
< p > A 30-minute call to establish the specific decision you are trying to make.< / p >
< span class = "step-detail" > What decision are you trying to make?< / span >
< / div >
< div class = "process-step" >
< div class = "step-num" > 2< / div >
< h3 > Define the geography< / h3 >
< p > We agree on the precise scope: a district, a city, a region, or a specific asset list.< / p >
< span class = "step-detail" > District, city, region, or asset list< / span >
< / div >
< div class = "process-step" >
< div class = "step-num" > 3< / div >
< h3 > We collect and analyse< / h3 >
< p > quiXzoom field data collection combined with the Landvex intelligence layer. No input required from your team during this phase.< / p >
< span class = "step-detail" > quiXzoom field data + intelligence layer< / span >
< / div >
< div class = "process-step" >
< div class = "step-num" > 4< / div >
< h3 > You receive the answer< / h3 >
< p > A structured report with confidence scores and raw data. Delivered within the agreed timeline.< / p >
< span class = "step-detail" > Structured report + raw data + confidence scores< / span >
< / div >
< / div >
< / div >
< / section >
<!-- WHAT YOU GET -->
< section >
< div class = "container" >
< div style = "display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start" >
< div >
< div class = "section-label" > Deliverables< / div >
< h2 class = "section-title" > What you receive at the end of a pilot.< / h2 >
< p class = "section-sub" style = "margin-bottom:32px" > Every pilot delivers the same structured set of outputs — designed for immediate use by analysts, investment committees, and operations teams.< / p >
< a class = "btn btn-outline" href = "#contact" > Book a pilot call< / a >
< / div >
< div class = "deliverables-grid" >
< div class = "deliverable-item" >
< div class = "deliverable-icon" >
< svg width = "18" height = "18" viewBox = "0 0 24 24" fill = "none" stroke = "#0066ff" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < path d = "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" / > < polyline points = "14 2 14 8 20 8" / > < line x1 = "16" y1 = "13" x2 = "8" y2 = "13" / > < line x1 = "16" y1 = "17" x2 = "8" y2 = "17" / > < / svg >
< / div >
< div >
< h4 > Intelligence report< / h4 >
< p > Structured PDF and structured data export. Designed for internal distribution and investment committee presentation.< / p >
< / div >
< / div >
< div class = "deliverable-item" >
< div class = "deliverable-icon" >
< svg width = "18" height = "18" viewBox = "0 0 24 24" fill = "none" stroke = "#0066ff" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < line x1 = "18" y1 = "20" x2 = "18" y2 = "10" / > < line x1 = "12" y1 = "20" x2 = "12" y2 = "4" / > < line x1 = "6" y1 = "20" x2 = "6" y2 = "14" / > < / svg >
< / div >
< div >
< h4 > Confidence scores per data point< / h4 >
< p > Every finding includes a quantified confidence score based on source quality, field verification, and cross-reference analysis.< / p >
< / div >
< / div >
< div class = "deliverable-item" >
< div class = "deliverable-icon" >
< svg width = "18" height = "18" viewBox = "0 0 24 24" fill = "none" stroke = "#0066ff" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < polyline points = "23 4 23 10 17 10" / > < polyline points = "1 20 1 14 7 14" / > < path d = "M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15" / > < / svg >
< / div >
< div >
< h4 > Contradiction analysis< / h4 >
< p > Where official data and observed reality diverge. Documented with source references and confidence ratings.< / p >
< / div >
< / div >
< div class = "deliverable-item" >
< div class = "deliverable-icon" >
< svg width = "18" height = "18" viewBox = "0 0 24 24" fill = "none" stroke = "#0066ff" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < circle cx = "12" cy = "12" r = "10" / > < polyline points = "12 6 12 12 16 14" / > < / svg >
< / div >
< div >
< h4 > 3-month follow-up observation< / h4 >
< p > A follow-up observation of the same geography 3 months after delivery, included in every pilot engagement.< / p >
< / div >
< / div >
< / div >
< / div >
< / div >
< / section >
<!-- TYPICAL QUESTIONS -->
< section class = "section-alt" >
< div class = "container" >
< div class = "section-header section-header-center" >
< div class = "section-label" > Typical pilot questions< / div >
< h2 class = "section-title" > The question defines the pilot.< / h2 >
< p class = "section-sub" > A pilot starts with a specific question. These are examples of questions previous pilots have been scoped around.< / p >
< / div >
< div class = "questions-grid" >
< div class = "question-card" >
< div class = "question-mark" > "< / div >
< p > Should we invest in this district?< / p >
< / div >
< div class = "question-card" >
< div class = "question-mark" > "< / div >
< p > Where is our infrastructure most at risk?< / p >
< / div >
< div class = "question-card" >
< div class = "question-mark" > "< / div >
< p > Which locations have the highest retail opportunity?< / p >
< / div >
< div class = "question-card" >
< div class = "question-mark" > "< / div >
< p > What is actually changing in this area?< / p >
< / div >
< / div >
< div style = "text-align:center;margin-top:32px" >
< p style = "font-size:14px;color:var(--text-dim)" > Your question may differ. If you can articulate a decision, we can scope a pilot around it.< / p >
< / div >
< / div >
< / section >
<!-- PRICING -->
< section >
< div class = "container" >
< div class = "section-header section-header-center" >
< div class = "section-label" > Pricing< / div >
< h2 class = "section-title" > Fixed scope. Fixed cost.< / h2 >
< p class = "section-sub" > Pilot pricing is scope-dependent. Every pilot is quoted as a fixed fee before work begins.< / p >
< / div >
< div class = "pricing-card" >
< div class = "pricing-from" > Pilot pricing from< / div >
< div class = "pricing-amount" > EUR 15,000< / div >
< div class = "pricing-note" > Scope-dependent. Contact us for a fixed quote.< / div >
< div class = "pricing-includes" >
< div class = "pricing-includes-item" >
< svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < polyline points = "20 6 9 17 4 12" / > < / svg >
Intelligence report (PDF + structured data)
< / div >
< div class = "pricing-includes-item" >
< svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < polyline points = "20 6 9 17 4 12" / > < / svg >
Confidence scores per data point
< / div >
< div class = "pricing-includes-item" >
< svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < polyline points = "20 6 9 17 4 12" / > < / svg >
Contradiction analysis (official vs observed)
< / div >
< div class = "pricing-includes-item" >
< svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < polyline points = "20 6 9 17 4 12" / > < / svg >
3-month follow-up observation
< / div >
< div class = "pricing-includes-item" >
< svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" > < polyline points = "20 6 9 17 4 12" / > < / svg >
Fixed scope, fixed cost — no overruns
< / div >
< / div >
< a class = "btn btn-lg" href = "#contact" style = "width:100%;justify-content:center" > Request a fixed quote< / a >
< / div >
< / div >
< / section >
<!-- CTA BANNER -->
< section style = "padding:80px 24px" >
< div class = "container" >
< div class = "cta-banner" >
< div class = "cta-label" > Book a call< / div >
< h2 > Book a pilot call.< / h2 >
< p > A 30-minute call to define your question and scope the pilot. No obligation. We tell you what we can answer and at what cost before anything begins.< / p >
< a class = "btn btn-lg" href = "#contact" > Book a pilot call< / a >
< / div >
< / div >
< / section >
<!-- CONTACT -->
< section id = "contact" >
< div class = "container" >
< div class = "contact-wrapper" >
< div class = "section-label" > Book< / div >
< h2 class = "section-title" > Start the pilot conversation.< / h2 >
< p class = "section-sub" style = "margin:0 auto 40px" > Tell us your question and geography. We will come back with a scoped proposal and fixed price within two business days.< / p >
< form class = "contact-form" id = "contact-form" >
< div class = "form-row" >
< div class = "form-group" >
< label for = "name" > Name< / label >
< input type = "text" id = "name" name = "name" placeholder = "Your name" required >
< / div >
< div class = "form-group" >
< label for = "org" > Organisation< / label >
< input type = "text" id = "org" name = "organisation" placeholder = "Your organisation" required >
< / div >
< / div >
< div class = "form-group" >
< label for = "email" > Email< / label >
< input type = "email" id = "email" name = "email" placeholder = "you@organisation.com" required >
< / div >
< div class = "form-group" >
< label for = "geography" > Geography< / label >
< input type = "text" id = "geography" name = "geography" placeholder = "City, district, region, or asset list" >
< / div >
< div class = "form-group" >
< label for = "message" > Your question< / label >
< textarea id = "message" name = "message" placeholder = "What decision are you trying to make? Describe it in one or two sentences." > < / textarea >
< / div >
< button type = "submit" class = "btn btn-lg" style = "width:100%;justify-content:center" > Book a pilot call< / button >
< p class = "form-note" > We respond within two business days with a scoped proposal and fixed price. Your information stays private.< / p >
< div id = "form-message" > < / div >
< / form >
< / div >
< / div >
< / section >
<!-- FOOTER -->
< footer >
< div class = "footer-inner" >
< div >
< div class = "footer-logo" > Landvex< / div >
< div class = "footer-copy" > © 2026 LandveX AB · Org.nr 559141-7042< / div >
< div class = "footer-tagline" > Decision intelligence for the physical world.< / div >
< / div >
< div class = "footer-links" >
< a href = "/privacy/" > Privacy< / a >
< a href = "/terms/" > Terms< / a >
< a href = "/methodology/" > Methodology< / a >
< a href = "/security/" > Security< / a >
< a href = "/enterprise/" > Enterprise< / a >
< a href = "/reports/" > Reports< / a >
< a href = "/pilot/" > Pilot< / a >
< a href = "mailto:contact@landvex.com" > contact@landvex.com< / a >
< a href = "https://www.linkedin.com/company/landvex" target = "_blank" rel = "noopener" class = "footer-social" title = "LandveX on LinkedIn" >
< svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" xmlns = "http://www.w3.org/2000/svg" >
< path d = "M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z" stroke = "#888" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" / >
< rect x = "2" y = "9" width = "4" height = "12" stroke = "#888" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" / >
< circle cx = "4" cy = "4" r = "2" stroke = "#888" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" / >
< / svg >
< / a >
< a href = "https://x.com/landvex" target = "_blank" rel = "noopener" class = "footer-social" title = "LandveX on X" >
< svg width = "15" height = "15" viewBox = "0 0 24 24" fill = "#888" xmlns = "http://www.w3.org/2000/svg" >
< path d = "M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-4.714-6.231-5.401 6.231H2.746l7.73-8.835L1.254 2.25H8.08l4.253 5.622 5.912-5.622Zm-1.161 17.52h1.833L7.084 4.126H5.117z" / >
< / svg >
< / a >
< / div >
< / div >
< / footer >
< script >
document . getElementById ( 'contact-form' ) . addEventListener ( 'submit' , async function ( e ) {
e . preventDefault ( ) ;
const btn = this . querySelector ( 'button[type="submit"]' ) ;
const msgEl = document . getElementById ( 'form-message' ) ;
btn . disabled = true ; btn . textContent = 'Sending...' ;
const data = {
source : 'landvex-pilot' ,
name : this . name . value ,
organisation : this . organisation . value ,
email : this . email . value ,
geography : this . geography ? this . geography . value : '' ,
message : this . message . value
} ;
try {
const res = await fetch ( 'https://api.quixzoom.com/api/qz/waitlist' , {
method : 'POST' , headers : { 'Content-Type' : 'application/json' } ,
body : JSON . stringify ( data )
} ) ;
if ( res . ok || res . status === 201 ) {
msgEl . className = 'success' ;
msgEl . textContent = "Request received. We will respond within two business days with a scoped proposal." ;
msgEl . style . display = 'block' ; this . reset ( ) ;
} else { throw new Error ( 'Server error ' + res . status ) ; }
} catch ( err ) {
msgEl . className = 'error' ;
msgEl . textContent = 'Something went wrong. Please email us at contact@landvex.com.' ;
msgEl . style . display = 'block' ;
}
btn . disabled = false ; btn . textContent = 'Book a pilot call' ;
} ) ;
< / script >
< / body >
< / html >