Files
boc/landvex-site/use-cases/bridge-inspection/france/index.html
T
Bernt 6de2455917 v1.2.0: Add Global Markets footer, translated to 9 languages
- Added GLOBAL_MARKETS_TITLE to all translation files
- Updated footer with 12 markets (4 active + 8 upcoming)
- Translated market section to: zh-cn, zh-tw, ja, ko, th, vi, id, ms, hi
- Built and deployed to production
- CloudFront invalidation: I3RTMXVFDJXWLG3SYX208OP1CC
2026-07-08 19:56:03 +00:00

350 lines
25 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bridge Inspection in France — Landvex</title>
<meta name="description" content="Landvex delivers bridge condition intelligence for CEREMA, Directions interdépartementales des routes, and French municipalities — field-verified.">
<link rel="canonical" href="https://www.landvex.com/use-cases/bridge-inspection/france/">
<link rel="alternate" hreflang="x-default" href="https://www.landvex.com/">
<meta property="og:type" content="website">
<meta property="og:url" content="https://www.landvex.com/use-cases/bridge-inspection/france/">
<meta property="og:title" content="Bridge Inspection in France — Landvex">
<meta property="og:description" content="Landvex delivers bridge condition intelligence for CEREMA, Directions interdépartementales des routes, and French municipalities — field-verified structural assessment deployed in 72 hours.">
<meta property="og:image" content="https://www.landvex.com/og-image.jpg">
<meta name="twitter:card" content="summary_large_image">
<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">
<meta name="robots" content="index, follow">
<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": "Use Cases", "item": "https://www.landvex.com/use-cases/"},
{"@type": "ListItem", "position": 3, "name": "Bridge Inspection", "item": "https://www.landvex.com/use-cases/bridge-inspection/"},
{"@type": "ListItem", "position": 4, "name": "France", "item": "https://www.landvex.com/use-cases/bridge-inspection/france/"}
]
}</script>
<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-dim: #6B6B6B; --text-muted: #6B6B6B; --surface: #ffffff;
--surface-2: #f5f5f7; --border: rgba(0,0,0,0.08);
--radius-sm: 8px; --radius-md: 14px; --radius-lg: 24px;
}
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 { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 0 40px; height: 64px; background: rgba(255,255,255,0.88); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-bottom: 1px solid var(--border); }
.nav-logo {
font-size: 18px;
font-weight: 700;
letter-spacing: -0.3px;
color: #1d1d1f; }
.btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 22px; background: var(--blue); color: #1d1d1f; font-size: 14px; font-weight: 600; border-radius: var(--radius-md); border: none; cursor: pointer; transition: background 0.2s, transform 0.15s; }
.btn:hover { background: var(--blue-dark); transform: translateY(-1px); }
.btn-outline { background: transparent; border: 1.5px solid rgba(0,0,0,0.18); color: var(--text-light); }
.btn-outline:hover { background: rgba(0,0,0,0.04); transform: translateY(-1px); }
.btn-lg { padding: 14px 30px; font-size: 16px; border-radius: var(--radius-md); }
.hero { min-height: 88vh; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 120px 24px 80px; position: relative; overflow: hidden; }
.hero::before { content: ''; position: absolute; top: -200px; left: 50%; transform: translateX(-50%); width: 900px; height: 600px; background: radial-gradient(ellipse at center, rgba(0,102,255,0.12) 0%, transparent 70%); pointer-events: none; }
.hero-eyebrow { display: inline-flex; align-items: center; gap: 8px; background: rgba(0,102,255,0.1); border: 1px solid rgba(0,102,255,0.25); color: #5599ff; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; padding: 6px 16px; border-radius: 100px; margin-bottom: 28px; }
.hero h1 { font-size: clamp(34px,5.5vw,62px); font-weight: 800; letter-spacing: -2px; line-height: 1.06; color: #1d1d1f; max-width: 820px; margin-bottom: 24px; }
.hero-sub { font-size: clamp(16px,2vw,19px); color: var(--text-dim); max-width: 640px; line-height: 1.65; margin-bottom: 40px; }
.hero-ctas { display: flex; gap: 14px; flex-wrap: wrap; justify-content: center; }
section { padding: 96px 24px; }
.container { max-width: 1140px; margin: 0 auto; }
.section-label { font-size: 12px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--blue); margin-bottom: 16px; }
.section-title { font-size: clamp(26px,3.8vw,42px); font-weight: 800; letter-spacing: -1.2px; line-height: 1.1; color: #1d1d1f; margin-bottom: 16px; }
.section-sub { font-size: 17px; color: var(--text-dim); max-width: 600px; line-height: 1.7; }
.use-case-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin-top: 48px; }
.use-case-card { background: var(--surface-2); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 32px 28px; transition: border-color 0.25s, transform 0.2s; }
.use-case-card:hover { border-color: rgba(0,102,255,0.35); transform: translateY(-3px); }
.use-case-card h3 { font-size: 17px; font-weight: 700; color: #1d1d1f; margin-bottom: 8px; }
.use-case-card p { font-size: 14px; color: var(--text-dim); line-height: 1.6; }
.decisions-bg { background: var(--surface); }
.decisions-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 40px; }
.decision-chip { background: var(--bg-dark); border: 1px solid var(--border); border-radius: var(--radius-md); padding: 18px 22px; display: flex; align-items: center; gap: 12px; }
.decision-chip .chip-dot { width: 8px; height: 8px; border-radius: var(--radius-full); background: var(--blue); flex-shrink: 0; }
.decision-chip span { font-size: 14px; font-weight: 600; color: var(--text-light); }
.contradiction-bg { background: #e8f0fe; }
.contradiction-box { background: rgba(0,0,0,.05); border: 1px solid rgba(0,0,0,.1); border-radius: var(--radius-lg); padding: 36px 40px; margin-bottom: 32px; }
.conflict-header { display: flex; align-items: flex-start; gap: 16px; margin-bottom: 24px; }
.conflict-flag { font-size: 1.5rem; color: #f87171; }
.conflict-title { color: #f87171; font-weight: 800; font-size: .9375rem; margin-bottom: 4px; }
.conflict-desc { color: rgba(0,0,0,.6); font-size: .875rem; line-height: 1.6; }
.conflict-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.conflict-side { border-radius: var(--radius-md); padding: 16px; }
.conflict-official { background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.2); }
.conflict-observed { background: rgba(239,68,68,.1); border: 1px solid rgba(239,68,68,.2); }
.conflict-side-label { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 10px; }
.conflict-official .conflict-side-label { color: #86efac; }
.conflict-observed .conflict-side-label { color: #fca5a5; }
.conflict-side ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.conflict-footer { margin-top: 20px; padding-top: 20px; border-top: 1px solid rgba(0,0,0,.1); display: flex; justify-content: space-between; align-items: center; }
.conflict-footer-label { color: rgba(0,0,0,.75); font-size: .8125rem; }
.conflict-confidence { color: #f87171; font-weight: 800; font-size: 1.125rem; }
.breadcrumb { font-size: 13px; color: var(--text-muted); padding: 76px 40px 0; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.breadcrumb a { color: var(--text-muted); }
.breadcrumb a:hover { color: #1d1d1f; }
.breadcrumb .sep { color: var(--border); }
.comparison-table { width: 100%; border-collapse: collapse; margin-top: 32px; border-radius: var(--radius-md); overflow: hidden; border: 1px solid rgba(0,0,0,0.08); }
.comparison-table th { padding: 14px 16px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; text-align: left; background: rgba(0,0,0,0.04); color: var(--text-dim); }
.cta-section { background: #e8f0fe; }
.cta-box { border-radius: var(--radius-lg); padding: 56px 48px; text-align: center; max-width: 680px; margin: 0 auto; }
.cta-box h2 { font-size: clamp(24px,3vw,36px); font-weight: 800; color: #1d1d1f; margin-bottom: 16px; }
.cta-box p { font-size: 17px; color: rgba(0,0,0,.7); margin-bottom: 36px; line-height: 1.65; }
.lv-disclaimer { font-size:.75rem; color:rgba(0,0,0,.75); margin-top:24px; padding:12px 16px; background:rgba(0,0,0,.04); border-radius: var(--radius-md); line-height:1.6; max-width:800px; }
.lv-disclaimer a { color:rgba(0,0,0,.65); text-decoration:underline; }
footer { border-top: 1px solid var(--border); padding: 40px; }
.footer-inner { max-width: 1140px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
.footer-logo { font-size: 17px; font-weight: 700; color: #1d1d1f; }
.footer-copy { font-size: 13px; color: var(--text-muted); }
.footer-tagline { font-size: 12px; color: var(--text-muted); margin-top: 4px; }
.footer-links { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; }
.footer-links a { font-size: 14px; color: var(--text-muted); transition: color 0.2s; }
.footer-links a:hover { color: #1d1d1f; }
.footer-social { width: 32px; height: 32px; border: 1px solid var(--border); border-radius: var(--radius-md); display: flex; align-items: center; justify-content: center; transition: border-color 0.2s, background 0.2s; }
.footer-social:hover { border-color: rgba(0,0,0,0.25); background: rgba(0,0,0,0.04); }
@media (max-width:900px) { nav { padding:0 20px; } .use-case-grid { grid-template-columns:1fr; } .decisions-grid { grid-template-columns:1fr 1fr; } .conflict-grid { grid-template-columns:1fr; } }
@media (max-width:600px) { section { padding:72px 20px; } .decisions-grid { grid-template-columns:1fr; } nav { padding:0 16px; } .hero h1 { letter-spacing:-1px; } .contradiction-box { padding:24px 20px; } }
</style>
</head>
<body>
<nav>
<a class="nav-logo" href="https://www.landvex.com/">&larr; Landvex</a>
<a class="btn btn-outline" href="/contact/">Contact &rarr;</a>
</nav>
<div class="breadcrumb">
<a href="https://www.landvex.com/">Landvex</a>
<span class="sep">/</span>
<a href="/use-cases/">Use Cases</a>
<span class="sep">/</span>
<a href="/use-cases/bridge-inspection/">Bridge Inspection</a>
<span class="sep">/</span>
<span style="color:#aaa;">France</span>
</div>
<!-- HERO -->
<section class="hero">
<div class="hero-eyebrow">Bridge Inspection — France</div>
<h1>Bridge Inspection in France</h1>
<p class="hero-sub">France manages one of Europe's most extensive road bridge inventories, with a significant share classified as requiring attention. Landvex provides CEREMA, DIR networks, and collectivités territoriales with field-verified condition intelligence to prioritize intervention before deterioration becomes critical.</p>
<div class="hero-ctas">
<a class="btn btn-lg" href="/pilot/">Request a pilot &rarr;</a>
<a class="btn btn-outline btn-lg" href="/contact/">Contact Landvex</a>
</div>
</section>
<!-- USE CASE CARDS -->
<section style="background:var(--surface);">
<div class="container">
<div class="section-label">Capabilities</div>
<h2 class="section-title">Bridge Inspection in France — what Landvex delivers</h2>
<p class="section-sub">Every engagement is anchored to a specific decision. Select a capability to discuss how Landvex applies it to your context.</p>
<div class="use-case-grid">
<a class="use-case-card" href="/contact/" style="display:block;text-decoration:none;">
<span class="uc-icon" style="font-size:22px;display:block;margin-bottom:16px;color:#5599ff;">&#965050</span>
<h3>IQOA Condition Pre-Screening</h3>
<p>Field observations structured to support IQOA classification workflows. Identify 2E, 3 and 3U priority candidates before formal inspection deployment, enabling efficient use of CEREMA and DIR inspection resources.</p>
<div style="margin-top:14px;font-size:13px;font-weight:700;color:#0066ff;">Learn more &rarr;</div>
</a>
<a class="use-case-card" href="/contact/" style="display:block;text-decoration:none;">
<span class="uc-icon" style="font-size:22px;display:block;margin-bottom:16px;color:#5599ff;">&#9632;</span>
<h3>Route Nationale Network Monitoring</h3>
<p>Continuous observation across RN and departmental network bridge assets. Detect emerging structural deficiencies between IQOA inspection cycles with zero physical access required.</p>
<div style="margin-top:14px;font-size:13px;font-weight:700;color:#0066ff;">Learn more &rarr;</div>
</a>
<a class="use-case-card" href="/contact/" style="display:block;text-decoration:none;">
<span class="uc-icon" style="font-size:22px;display:block;margin-bottom:16px;color:#5599ff;">&#9670;</span>
<h3>Departmental Council Asset Intelligence</h3>
<p>Support conseils départementaux in prioritizing limited maintenance budgets across the departmental road network. Field-verified ranking by observed condition and deterioration rate.</p>
<div style="margin-top:14px;font-size:13px;font-weight:700;color:#0066ff;">Learn more &rarr;</div>
</a></div>
</div>
</section>
<!-- COMPARISON TABLE -->
<section>
<div class="container">
<div class="section-label">Comparison</div>
<h2 class="section-title">Landvex vs traditional bridge inspection methods</h2>
<p class="section-sub">How field-verified continuous intelligence compares to conventional survey and inspection approaches.</p>
<table class="comparison-table">
<thead>
<tr>
<th>Dimension</th>
<th>Traditional approach</th>
<th>Landvex</th>
</tr>
</thead>
<tbody>
<tr>
<td style="padding:14px 16px;font-size:14px;font-weight:600;color:#aaa;border-bottom:1px solid rgba(0,0,0,0.07);">Physical access required</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">Yes — CEREMA/DIR inspector</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">No — remote observation</td>
</tr>
<tr>
<td style="padding:14px 16px;font-size:14px;font-weight:600;color:#aaa;border-bottom:1px solid rgba(0,0,0,0.07);">Deployment lead time</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">Months</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">2472 hours</td>
</tr>
<tr>
<td style="padding:14px 16px;font-size:14px;font-weight:600;color:#aaa;border-bottom:1px solid rgba(0,0,0,0.07);">IQOA cycle supplement</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">3-year cycle only</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">On-demand between cycles</td>
</tr>
<tr>
<td style="padding:14px 16px;font-size:14px;font-weight:600;color:#aaa;border-bottom:1px solid rgba(0,0,0,0.07);">Coverage per campaign</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">Dozens of bridges</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">Hundreds of bridges</td>
</tr>
<tr>
<td style="padding:14px 16px;font-size:14px;font-weight:600;color:#aaa;border-bottom:1px solid rgba(0,0,0,0.07);">Data deliverable</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">IQOA form, PDF</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">Structured data, GIS-ready</td>
</tr>
<tr>
<td style="padding:14px 16px;font-size:14px;font-weight:600;color:#aaa;border-bottom:1px solid rgba(0,0,0,0.07);">Contradiction detection</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">Not standard</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">Automated AI cross-reference</td>
</tr>
</tbody>
</table>
</div>
</section>
<!-- KEY DECISIONS -->
<section class="decisions-bg">
<div class="container">
<div class="section-label">Decision support</div>
<h2 class="section-title">Decisions Landvex informs in France</h2>
<p class="section-sub">Every Landvex engagement is anchored to one or more of these decisions. We start with your question before designing the intelligence mission.</p>
<div class="decisions-grid">
<div class="decision-chip">
<span class="chip-dot"></span>
<span>IQOA pre-screening and prioritisation</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Departmental council budget allocation</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Route nationale emergency intervention planning</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Post-works compliance verification</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Climate resilience risk mapping</span>
</div></div>
</div>
</section>
<!-- CONTRADICTION ENGINE -->
<section class="contradiction-bg">
<div class="container" style="max-width:900px;">
<div style="text-align:center;margin-bottom:56px;">
<div class="section-label" style="color:rgba(0,0,0,.75);">Contradiction Engine</div>
<h2 class="section-title" style="color: #1d1d1f;">Most systems confirm what you already believe.<br>Landvex finds what doesn&rsquo;t add up.</h2>
<p class="section-sub" style="color:rgba(0,0,0,.75);margin:0 auto;max-width:600px;">The most actionable intelligence is contradiction. Landvex actively searches for conflicts between official narratives and observed field reality — and quantifies the confidence gap.</p>
</div>
<div class="contradiction-box">
<div class="conflict-header">
<span class="conflict-flag">&#9888;</span>
<div>
<div class="conflict-title">Narrative Conflict Detected &mdash; RN10 Corridor — Nouvelle-Aquitaine</div>
<div class="conflict-desc">IQOA classification 2 suggests standard maintenance interval. Observed deterioration markers are consistent with 2E or 3 classification on three of five monitored structures.</div>
</div>
</div>
<div class="conflict-grid">
<div class="conflict-side conflict-official">
<div class="conflict-side-label">Official narrative</div>
<ul><li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100003 IQOA last survey: 28 months ago, classification 2</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100003 Maintenance programme: on schedule</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100003 No restriction orders active</li></ul>
</div>
<div class="conflict-side conflict-observed">
<div class="conflict-side-label">Observed reality</div>
<ul><li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100007 Advanced carbonation of concrete at three pier bases</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100007 Pavement deformation above central span consistent with deck movement</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100007 Joint sealant failure on four of six expansion joints</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#100007 Corrosion staining on soffit indicates active reinforcement attack</li></ul>
</div>
</div>
<div class="conflict-footer">
<span class="conflict-footer-label">Confidence in official narrative</span>
<span class="conflict-confidence">21%</span>
</div>
</div>
<div style="display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:16px;">
<div style="text-align:center;padding:24px;">
<div style="font-size:1.5rem;margin-bottom:10px;color:#5599ff;">&#128269;</div>
<h4 style="color: #1d1d1f;font-weight:700;margin-bottom:6px;">Show me what I am missing</h4>
<p style="color:rgba(0,0,0,.75);font-size:.8125rem;">Blind spots absent from official data and internal reports</p>
</div>
<div style="text-align:center;padding:24px;">
<div style="font-size:1.5rem;margin-bottom:10px;color:#5599ff;">&#9878;</div>
<h4 style="color: #1d1d1f;font-weight:700;margin-bottom:6px;">AI Red Team</h4>
<p style="color:rgba(0,0,0,.75);font-size:.8125rem;">Every conclusion is challenged by a second model before delivery</p>
</div>
<div style="text-align:center;padding:24px;">
<div style="font-size:1.5rem;margin-bottom:10px;color:#5599ff;">&#128208;</div>
<h4 style="color: #1d1d1f;font-weight:700;margin-bottom:6px;">Which assumptions are wrong?</h4>
<p style="color:rgba(0,0,0,.75);font-size:.8125rem;">Identify where your thesis conflicts with observed reality</p>
</div>
</div>
</div>
</section>
<!-- CTA -->
<section class="cta-section">
<div class="container">
<div class="cta-box">
<div class="section-label" style="color:rgba(0,0,0,.75);">Get started</div>
<h2>Request a pilot for Bridge Inspection in France</h2>
<p>Tell us the decision you need to make. We will design an intelligence mission and return field-verified data within 72 hours — no procurement delay, no physical access required.</p>
<a class="btn btn-lg" href="/pilot/" style="font-size:17px;padding:16px 36px;">Request a pilot &rarr;</a>
</div>
<p class="lv-disclaimer" style="margin:32px auto 0;">Intelligence outputs are indicative and advisory only. Based on field observations — not investment, financial, or legal advice. Landvex AB accepts no liability for decisions made based on these outputs. <a href="/methodology/">Methodology &rarr;</a></p>
</div>
</section>
<footer>
<div class="footer-inner">
<div>
<div class="footer-logo">LandveX</div>
<div class="footer-copy">&copy; 2026 Landvex Inc &middot; 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="https://www.landvex.com/">Home</a>
<a href="/verticals/">Verticals</a>
<a href="/methodology/">Methodology</a>
<a href="/security/">Security</a>
<a href="https://www.quixzoom.com/" target="_blank" rel="noopener">quiXzoom &rarr;</a>
<a href="mailto:contact@landvex.com">contact@landvex.com</a>
<a href="mailto:security@landvex.com" style="color:var(--text-muted,#888)">security@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>
</body>
</html>