Files
boc/landvex-site/use-cases/bridge-inspection/germany/index.html
T
Bernt aee0f09db8 landvex: Fixar och tester klara för alla komponenter
- Datafabrik: Dockerfile fix, agentorkestrering fungerar
- Vision: Identify-modell, FAISS, OCR alla testade
- API: Alla 7 integrationstester passerade
- Upplösare: Entitetsupplösning verifierad
2026-07-05 06:41:32 +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 Germany — Landvex</title>
<meta name="description" content="Landvex supports Autobahn GmbH, Landesbehörden, and German municipalities with AI-assisted bridge condition monitoring and structural assessment .">
<link rel="canonical" href="https://www.landvex.com/use-cases/bridge-inspection/germany/">
<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/germany/">
<meta property="og:title" content="Bridge Inspection in Germany — Landvex">
<meta property="og:description" content="Landvex supports Autobahn GmbH, Landesbehörden, and German municipalities with AI-assisted bridge condition monitoring and structural assessment — field-verified, delivered 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": "Germany", "item": "https://www.landvex.com/use-cases/bridge-inspection/germany/"}
]
}</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(10,10,10,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: 50%; 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: 16px; 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: 10px; 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: 12px; 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: 16px; 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:8px; 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: 8px; 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;">Germany</span>
</div>
<!-- HERO -->
<section class="hero">
<div class="hero-eyebrow">Bridge Inspection — Germany</div>
<h1>Bridge Inspection in Germany</h1>
<p class="hero-sub">Germany operates over 100,000 classified road bridges, many approaching end-of-design-life. Landvex delivers field-verified structural condition intelligence to Autobahn GmbH, state road authorities, and municipalities at the speed maintenance decisions require.</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 Germany — 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;">&#9650;</span>
<h3>DIN 1076 Condition Assessment Support</h3>
<p>Field observation data structured to complement DIN 1076 inspection requirements. Identify priority assets before the next mandatory Hauptpruefung cycle without deploying physical inspection teams.</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>Autobahn Network Monitoring</h3>
<p>Continuous observation across the federal motorway bridge inventory. Detect surface deterioration, joint failure, and approach slab movement between scheduled inspection intervals.</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>Municipal Bridge Risk Ranking</h3>
<p>Support German Kreise and Gemeinden in allocating constrained maintenance budgets. Rank assets by observed condition and deterioration velocity with field-verified evidence.</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 — certified inspector on site</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);">Weeks to 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);">DIN 1076 cycle supplement</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">Replaces only at 26 year interval</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 day</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">15 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);">50+ 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);">Contractor verification</td>
<td style="padding:14px 16px;font-size:14px;color:#999;border-bottom:1px solid rgba(0,0,0,0.07);">Manual punch lists</td>
<td style="padding:14px 16px;font-size:14px;color:#5599ff;font-weight:600;border-bottom:1px solid rgba(0,0,0,0.07);">AI-assisted independent verification</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 practice</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 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 Germany</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>Hauptpruefung pre-screening</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Autobahn GmbH CapEx prioritisation</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>State-level bridge portfolio risk ranking</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Municipal Kreisstrassen maintenance allocation</span>
</div>
<div class="decision-chip">
<span class="chip-dot"></span>
<span>Post-repair acceptance verification</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; A7 Corridor — Baden-Württemberg</div>
<div class="conflict-desc">Official Zustandsnote indicates adequate condition. Observed deterioration markers suggest significant underrating in the most recent Hauptpruefung.</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;'>&#10003; Hauptpruefung completed 22 months ago: Zustandsnote 2.7</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#10003; Maintenance programme: within schedule</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#10003; No load restriction 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;'>&#10007; Chloride-induced rebar corrosion visible on east parapet</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#10007; Expansion joint displacement 18mm above threshold on two spans</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#10007; Active water seepage through deck on south abutment</li>
<li style='color:rgba(0,0,0,.75);font-size:.875rem;padding:4px 0;'>&#10007; Bearing deterioration consistent with grade 3.5+ condition</li></ul>
</div>
</div>
<div class="conflict-footer">
<span class="conflict-footer-label">Confidence in official narrative</span>
<span class="conflict-confidence">18%</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 Germany</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>