6989a98d75
- Arkitektur: docs/auth/passwordless-architecture.md - Backend: iom/quixzoom-auth-service/ (FastAPI + Redis) - Webb: quixzoom-market-pages/se/login/ (QR-kod + polling) - App: iom/quixzoom-app/src/features/auth/ (push + deep links) Flöde: QR-kod → app-godkännande → webb-inloggad
674 lines
32 KiB
HTML
674 lines
32 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>Insurance Risk Intelligence — Landvex</title>
|
||
<meta name="description" content="Risk intelligence for insurance companies. Identify elevated-risk areas, validate claims, and monitor physical conditions continuously.">
|
||
<link rel="canonical" href="https://landvex.com/verticals/insurance/">
|
||
<meta property="og:type" content="website">
|
||
<meta property="og:url" content="https://landvex.com/verticals/insurance/">
|
||
<meta property="og:title" content="Insurance Risk Intelligence — Landvex">
|
||
<meta property="og:description" content="Risk intelligence for insurance companies. Identify elevated-risk areas, validate claims, and monitor physical conditions continuously.">
|
||
<meta property="og:image" content="https://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">
|
||
<link rel="stylesheet" href="/assets/css/landvex-complete.css">
|
||
<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-dark: #0a0a0a;
|
||
--text-body: #3a3a3a;
|
||
--text-muted: #6B6B6B;
|
||
--text-light: #1d1d1f;
|
||
--text-dim: #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.92);
|
||
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: 16px;
|
||
padding: 24px;
|
||
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: 24px; font-size: 16px; border-radius: var(--radius-md); }
|
||
|
||
.hero {
|
||
min-height: 90vh;
|
||
display: flex; flex-direction: column; align-items: center; justify-content: center;
|
||
text-align: center;
|
||
padding: 24px 80px;
|
||
position: relative; overflow: hidden;
|
||
}
|
||
|
||
/* Dekorativ bakgrund borttagen */
|
||
|
||
.hero-eyebrow { display: inline-flex; align-items: center; gap: 16px; color: #0066ff; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; padding: 8px 0; }
|
||
|
||
.hero h1 {
|
||
font-size: clamp(36px, 6vw, 68px);
|
||
font-weight: 800; letter-spacing: -2px; line-height: 1.05;
|
||
color: #1d1d1f; max-width: 820px; margin-bottom: 24px;
|
||
}
|
||
|
||
.hero-sub {
|
||
font-size: clamp(16px, 2vw, 19px);
|
||
color: var(--text-dim); max-width: 620px; line-height: 1.65;
|
||
margin-bottom: 40px;
|
||
}
|
||
|
||
.hero-ctas { display: flex; gap: 16px; flex-wrap: wrap; justify-content: center; }
|
||
|
||
section { padding: 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: 24px;
|
||
}
|
||
|
||
.section-title {
|
||
font-size: clamp(28px, 4vw, 44px);
|
||
font-weight: 800; letter-spacing: -1.2px; line-height: 1.1;
|
||
color: #1d1d1f; margin-bottom: 24px;
|
||
}
|
||
|
||
.section-sub {
|
||
font-size: 17px; color: var(--text-dim);
|
||
max-width: 600px; line-height: 1.7;
|
||
}
|
||
|
||
/* Light section overrides */
|
||
.light-section { background: #fff; }
|
||
.light-section .section-title { color: #0a0a0a; }
|
||
.light-section .section-sub { color: #444; }
|
||
.light-section .section-label { color: var(--blue); }
|
||
|
||
/* USE CASES */
|
||
.use-case-grid {
|
||
display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px;
|
||
margin-top: 48px;
|
||
}
|
||
|
||
.use-case-card {
|
||
background: var(--surface-2); border: 1px solid var(--border);
|
||
border-radius: var(--radius-lg); padding: 24px;
|
||
transition: border-color 0.25s, transform 0.2s;
|
||
}
|
||
.use-case-card:hover { border-color: rgba(0,102,255,0.35); transform: translateY(-3px); }
|
||
|
||
.uc-icon { font-size: 28px; margin-bottom: 24px; display: block; }
|
||
.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 */
|
||
.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: 24px;
|
||
display: flex; align-items: center; gap: 16px;
|
||
}
|
||
.decision-chip .chip-dot {
|
||
width: 8px; height: 8px; border-radius: var(--radius-full);
|
||
background: var(--blue); flex-shrink: 0;
|
||
}
|
||
.decision-chip span { font-size: 15px; font-weight: 600; color: var(--text-light); }
|
||
|
||
/* CONTRADICTION ENGINE */
|
||
.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: 24px; margin-bottom: 32px;
|
||
}
|
||
|
||
.conflict-header {
|
||
display: flex; align-items: flex-start; gap: 16px; margin-bottom: 24px;
|
||
}
|
||
.conflict-flag { font-size: 1.5rem; }
|
||
.conflict-title { color: #f87171; font-weight: 800; font-size: .9375rem; margin-bottom: 4px; }
|
||
.conflict-desc { color: rgba(0,0,0,.8); 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: 16px; }
|
||
.conflict-side li { color: rgba(0,0,0,.7); font-size: .875rem; }
|
||
|
||
.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; }
|
||
|
||
.ce-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
|
||
.ce-feature { text-align: center; padding: 20px; }
|
||
.ce-feature .ce-icon { font-size: 1.75rem; margin-bottom: 8px; }
|
||
.ce-feature h4 { color: #1d1d1f; font-weight: 700; margin-bottom: 6px; }
|
||
.ce-feature p { color: rgba(0,0,0,.75); font-size: .8125rem; }
|
||
|
||
/* SCORES */
|
||
.scores-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 40px; }
|
||
|
||
.score-card {
|
||
background: var(--surface-2); border: 1px solid var(--border);
|
||
border-radius: var(--radius-lg); padding: 24px; text-align: center;
|
||
}
|
||
|
||
.score-icon { font-size: 1.5rem; margin-bottom: 12px; }
|
||
.score-name { font-size: 15px; font-weight: 700; color: #1d1d1f; margin-bottom: 6px; }
|
||
.score-desc { font-size: 13px; color: var(--text-dim); line-height: 1.5; margin-bottom: 20px; }
|
||
.score-bar-wrap { background: rgba(0,0,0,.06); border-radius: var(--radius-sm); height: 8px; margin-bottom: 10px; }
|
||
.score-bar { height: 8px; border-radius: var(--radius-sm); background: linear-gradient(90deg, var(--blue), #5599ff); }
|
||
.score-value { font-size: 28px; font-weight: 800; color: var(--blue); letter-spacing: -1px; }
|
||
.score-label-sub { font-size: 11px; color: var(--text-dim); margin-top: 2px; }
|
||
|
||
/* CTA BANNER */
|
||
.cta-banner {
|
||
background: #e8f0fe; border-radius: var(--radius-lg); padding: 24px;
|
||
display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
|
||
margin-top: 48px;
|
||
}
|
||
.cta-banner h3 { color: #1d1d1f; font-size: 1.25rem; font-weight: 800; margin-bottom: 8px; }
|
||
.cta-banner p { color: rgba(0,0,0,.7); line-height: 1.65; font-size: .9375rem; }
|
||
.cta-banner-text { flex: 1; min-width: 260px; }
|
||
|
||
/* CONTACT FORM */
|
||
.contact-wrapper { max-width: 680px; margin: 0 auto; text-align: center; }
|
||
.contact-wrapper .section-title { margin-bottom: 10px; }
|
||
.contact-wrapper .section-sub { margin: 0 auto 48px; }
|
||
|
||
.contact-form {
|
||
background: var(--surface); border: 1px solid var(--border);
|
||
border-radius: var(--radius-lg); padding: 40px; text-align: left;
|
||
}
|
||
|
||
.form-group { display: flex; flex-direction: column; gap: 16px; margin-bottom: 24px; }
|
||
.form-group label { font-size: 13px; font-weight: 600; color: var(--text-dim); }
|
||
.form-group input, .form-group textarea {
|
||
background: var(--bg-dark); border: 1.5px solid var(--border);
|
||
border-radius: var(--radius-md); color: #1d1d1f;
|
||
font-size: 15px; font-family: inherit; padding: 24px;
|
||
outline: none; transition: border-color 0.2s; width: 100%;
|
||
}
|
||
.form-group input:focus, .form-group textarea:focus { border-color: var(--blue); }
|
||
.form-group input::placeholder, .form-group textarea::placeholder { color: var(--text-muted); }
|
||
.form-group textarea { min-height: 120px; resize: vertical; }
|
||
.form-note { font-size: 12px; color: var(--text-muted); margin-top: 12px; text-align: center; }
|
||
|
||
#form-message {
|
||
display: none; padding: 24px; border-radius: var(--radius-md);
|
||
font-size: 14px; font-weight: 600; text-align: center; margin-top: 16px;
|
||
}
|
||
#form-message.success { background: rgba(0,200,80,0.1); border: 1px solid rgba(0,200,80,0.25); color: #4ade80; }
|
||
#form-message.error { background: rgba(255,60,60,0.1); border: 1px solid rgba(255,60,60,0.25); color: #f87171; }
|
||
|
||
/* FOOTER */
|
||
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: 16px;
|
||
}
|
||
.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: 16px; 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; }
|
||
.scores-grid { grid-template-columns: 1fr 1fr; }
|
||
.conflict-grid { grid-template-columns: 1fr; }
|
||
.ce-features { grid-template-columns: 1fr; }
|
||
}
|
||
@media (max-width: 600px) {
|
||
section { padding: 48px 0 !important; }
|
||
.container { padding: 0 16px !important; box-sizing: border-box; }
|
||
.decisions-grid { grid-template-columns: 1fr !important; }
|
||
.scores-grid { grid-template-columns: 1fr !important; }
|
||
.use-case-grid { grid-template-columns: 1fr !important; }
|
||
.conflict-grid { grid-template-columns: 1fr !important; }
|
||
.ce-features { grid-template-columns: 1fr !important; }
|
||
.cta-banner { flex-direction: column !important; gap: 16px; padding: 24px; }
|
||
.contact-form { padding: 24px; }
|
||
.roi-grid { grid-template-columns: 1fr !important; }
|
||
.roi-grid > div { border-left: none !important; border-top: 1px solid rgba(0,0,0,.06) !important; }
|
||
.roi-grid > div:first-child { border-top: none !important; }
|
||
nav { padding: 0 16px; }
|
||
.hero h1 { letter-spacing: -1px; }
|
||
}
|
||
|
||
.lv-disclaimer{font-size:.75rem;color:rgba(0,0,0,.7);margin-top:24px;padding: 24px;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,.8);text-decoration:underline}
|
||
.lv-disclaimer--light{color:#888;background:#f5f5f5}
|
||
.lv-disclaimer--light a{color:#555}
|
||
</style>
|
||
<meta name="robots" content="index, follow">
|
||
<link rel="alternate" hreflang="x-default" href="https://landvex.com/">
|
||
<link rel="alternate" hreflang="en" href="https://landvex.com/"> <link rel="alternate" hreflang="it" href="https://landvex.it/">
|
||
<style>
|
||
@media (max-width: 640px) {
|
||
.hero h1 { font-size: 2rem !important; }
|
||
.hero p { font-size: 1rem !important; }
|
||
.card { padding: 1.5rem !important; }
|
||
.grid { grid-template-columns: 1fr !important; }
|
||
.btn { padding: 0.75rem 1.5rem !important; font-size: 1rem !important; }
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
|
||
<nav aria-label="Main navigation">
|
||
<a class="nav-logo" href="https://landvex.com/">← Back to Landvex</a>
|
||
<a class="lv-btn lv-btn--outline" href="#contact">Get in touch →</a>
|
||
</nav>
|
||
|
||
<!-- HERO -->
|
||
<section class="lv-hero">
|
||
<div class="lv-hero-eyebrow">Landvex — Insurance</div>
|
||
<h1>Which areas carry elevated risk?</h1>
|
||
<p class="lv-hero-subtitle">Landvex gives insurers and risk managers field-verified intelligence to price risk accurately, validate claims, and monitor exposure — grounded in what's actually on the ground.</p>
|
||
<div class="hero-ctas">
|
||
<a class="lv-btn lv-btn--lg" href="#contact">Request a briefing →</a>
|
||
<a class="btn btn-outline btn-lg" href="#use-cases">See use cases</a>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- ROI SIGNAL -->
|
||
<section>
|
||
<div class="lv-container">
|
||
<div class="section-label">Why it matters financially</div>
|
||
<h2 class="section-title">1% better loss ratio.<br>That’s the target.</h2>
|
||
<p>A mid-sized insurer with €500M gross written premium and a 68% loss ratio loses roughly €340M to claims annually. A 1 percentage point improvement in underwriting accuracy is worth €5M. Landvex sells field-verified ground truth — the input that makes that improvement possible.</p>
|
||
<div class="roi-grid">
|
||
<div>
|
||
<div>24h</div>
|
||
<div>Field data turnaround</div>
|
||
<p>From mission launch to structured intelligence delivery. No adjuster scheduling. No site visit coordination.</p>
|
||
</div>
|
||
<div>
|
||
<div><€15</div>
|
||
<div>Per asset observation</div>
|
||
<p>Versus €150–600 for a traditional field adjuster visit. AI-reviewed, geo-tagged, timestamped.</p>
|
||
</div>
|
||
<div>
|
||
<div>Aug 2026</div>
|
||
<div>Pilot availability</div>
|
||
<p>Limited pilot slots for insurers in Sweden and the Netherlands. Defined scope, defined price, defined deliverable.</p>
|
||
</div>
|
||
</div>
|
||
<p>Loss ratio illustration based on publicly available industry benchmarks. Actual improvement depends on portfolio composition, geography and implementation. Not a performance guarantee.</p>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- USE CASES -->
|
||
<section id="use-cases">
|
||
<div class="lv-container">
|
||
<div class="section-label">Use cases</div>
|
||
<h2 class="section-title">What Landvex does for Insurance</h2>
|
||
<p class="section-sub">From single-asset verifications to portfolio-wide intelligence missions — deployed in 24–72 hours.</p>
|
||
<div class="use-case-grid">
|
||
<div class="use-case-card" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="uc-icon"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#0066FF" stroke-width="2"><path d="M10.065 12.493a6 6 0 0 1 3.432 3.432l5.618-5.618a2 2 0 0 0-2.828-2.828l-5.618 5.618z"/><path d="m16 6 4 4"/><path d="M2.5 21.5l3.5-3.5"/></svg></span>
|
||
<h3>Claims validation</h3>
|
||
<p>Rapid field verification of loss reports and claimed damage. Geo-tagged visual evidence delivered within 72 hours of instruction.</p>
|
||
|
||
<div class="learn-more-hint">Learn more →</div></div>
|
||
<div class="use-case-card" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="uc-icon"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#0066FF" stroke-width="2"><path d="M18 20V10"/><path d="M12 20V4"/><path d="M6 20v-6"/></svg></span>
|
||
<h3>Pre-loss surveys</h3>
|
||
<p>Baseline documentation of insured assets before loss events — establishing ground truth for future claims resolution.</p>
|
||
|
||
<div class="learn-more-hint">Learn more →</div></div>
|
||
<div class="use-case-card" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="uc-icon"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#0066FF" stroke-width="2"><polygon points="1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6"/><line x1="8" y1="2" x2="8" y2="18"/><line x1="16" y1="6" x2="16" y2="22"/></svg></span>
|
||
<h3>Risk assessment</h3>
|
||
<p>Field-observed physical condition data to supplement modelled risk — identifying exposures not visible in satellite or historical data.</p>
|
||
|
||
<div class="learn-more-hint">Learn more →</div></div>
|
||
<div class="use-case-card" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="uc-icon"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#0066FF" stroke-width="2"><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z"/></svg></span>
|
||
<h3>Catastrophe monitoring</h3>
|
||
<p>Post-event rapid deployment to document affected areas and validate exposure across large geographies.</p>
|
||
|
||
<div class="learn-more-hint">Learn more →</div></div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- KEY DECISIONS -->
|
||
<section class="decisions-bg" id="key-decisions">
|
||
<div class="lv-container">
|
||
<div class="section-label">Decision support</div>
|
||
<h2 class="section-title">The decisions Landvex informs</h2>
|
||
<p class="section-sub">Every Landvex engagement is anchored to a specific decision. These are the ones our insurance clients face most often.</p>
|
||
<div class="decisions-grid">
|
||
<div class="decision-chip" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="chip-dot"></span>
|
||
<span>Underwriting</span>
|
||
</div>
|
||
<div class="decision-chip" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="chip-dot"></span>
|
||
<span>Pricing</span>
|
||
</div>
|
||
<div class="decision-chip" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="chip-dot"></span>
|
||
<span>Reserve allocation</span>
|
||
</div>
|
||
<div class="decision-chip" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="chip-dot"></span>
|
||
<span>Exposure management</span>
|
||
</div>
|
||
<div class="decision-chip" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<span class="chip-dot"></span>
|
||
<span>Claims settlement</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- CONTRADICTION ENGINE -->
|
||
<section class="contradiction-bg" id="contradiction">
|
||
<div class="lv-container">
|
||
<div>
|
||
<div class="section-label">Contradiction Engine</div>
|
||
<h2 class="section-title">Most systems tell you what the data says.<br>Landvex tells you what doesn’t add up.</h2>
|
||
<p class="section-sub">The most valuable intelligence is not confirmation. It’s contradiction. Landvex actively searches for conflicts between official narratives and observed reality.</p>
|
||
</div>
|
||
|
||
<div class="contradiction-box">
|
||
<div class="conflict-header">
|
||
<span class="conflict-flag">🚩</span>
|
||
<div>
|
||
<div class="conflict-title">Narrative Conflict Detected — Coastal City — South District</div>
|
||
<div> ILLUSTRATIVE SAMPLE — not real intelligence</div>
|
||
<div class="conflict-desc">Historical risk models indicate moderate coastal exposure. Recent field surveys reveal significant changes to physical risk profile.</div>
|
||
</div>
|
||
</div>
|
||
<div class="conflict-grid">
|
||
<div class="conflict-side conflict-official">
|
||
<div class="conflict-side-label">Official narrative</div>
|
||
<ul>
|
||
<li>𘚣 Historical loss ratio: within band</li><li>𘚣 Flood model: 1-in-50 year exposure</li><li>𘚣 Construction standards: compliant</li> </ul>
|
||
</div>
|
||
<div class="conflict-side conflict-observed">
|
||
<div class="conflict-side-label">Observed reality</div>
|
||
<ul>
|
||
<li>𘚧 <svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M4 4L12 12M12 4L4 12" stroke="#ef4444" stroke-width="2" stroke-linecap="round"/></svg> Drainage capacity significantly reduced</li><li>𘚧 <svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M4 4L12 12M12 4L4 12" stroke="#ef4444" stroke-width="2" stroke-linecap="round"/></svg> 3 new developments in flood shadow zone</li><li>𘚧 <svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M4 4L12 12M12 4L4 12" stroke="#ef4444" stroke-width="2" stroke-linecap="round"/></svg> Coastal erosion visible at 4 monitored sites</li><li>𘚧 <svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M4 4L12 12M12 4L4 12" stroke="#ef4444" stroke-width="2" stroke-linecap="round"/></svg> Emergency access routes partially compromised</li> </ul>
|
||
</div>
|
||
</div>
|
||
<div class="conflict-footer">
|
||
<span class="conflict-footer-label">Confidence in official narrative</span>
|
||
<span class="conflict-confidence">33%</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="ce-features">
|
||
<div class="ce-feature" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<div class="ce-icon">🔍</div>
|
||
<h4>Show me what I’m missing</h4>
|
||
<p>Blind spots not visible in official data or internal reports</p>
|
||
</div>
|
||
<div class="ce-feature" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<div class="ce-icon">⚔️</div>
|
||
<h4>AI Red Team</h4>
|
||
<p>Every conclusion is actively challenged by a second model before delivery</p>
|
||
</div>
|
||
<div class="ce-feature" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<div class="ce-icon">📐</div>
|
||
<h4>Which assumptions are wrong?</h4>
|
||
<p>Identify where your thesis conflicts with observed reality</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- SCORES -->
|
||
<section id="scores">
|
||
<div class="lv-container">
|
||
<div class="section-label">Intelligence scores</div>
|
||
<h2 class="section-title">Landvex scores relevant to Insurance</h2>
|
||
<p class="section-sub">Every score is derived from field-verified observations, cross-referenced against official data, and launching August 2026.</p>
|
||
<div class="scores-grid">
|
||
<div class="score-card" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<div class="score-icon"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#0066FF" stroke-width="2"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg></div>
|
||
<div class="score-name">Risk & Resilience Profile</div>
|
||
<div class="score-desc">Physical exposure mapping for insurance, finance, and public sector resilience planning.</div>
|
||
<div class="score-bar-wrap">
|
||
<div class="score-bar"></div>
|
||
</div>
|
||
<div class="score-value">74</div>
|
||
<div class="score-label-sub">placeholder · live data from Aug 2026</div>
|
||
|
||
<div class="learn-more-hint">Request access →</div></div>
|
||
<div class="score-card" onclick="location.href='#contact'" role="button" tabindex="0">
|
||
<div class="score-icon"></div>
|
||
<div class="score-name">Infrastructure Risk Index</div>
|
||
<div class="score-desc">Identifies areas where physical infrastructure is deteriorating faster than maintenance can address.</div>
|
||
<div class="score-bar-wrap">
|
||
<div class="score-bar"></div>
|
||
</div>
|
||
<div class="score-value">68</div>
|
||
<div class="score-label-sub">placeholder · live data from Aug 2026</div>
|
||
|
||
<div class="learn-more-hint">Request access →</div></div>
|
||
</div>
|
||
|
||
<div class="cta-banner">
|
||
<div class="cta-banner-text">
|
||
<h3>Four layers. One answer.</h3>
|
||
<p>quiXzoom observes. AMOS analyses. Landvex delivers the answer. Every engagement starts with one question: <em>what decision are you trying to make?</em></p>
|
||
</div>
|
||
<a class="lv-btn lv-btn--lg" href="#contact">Request a briefing →</a>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section id="contact">
|
||
<div class="lv-container">
|
||
<div class="contact-wrapper">
|
||
<div class="section-label">Request a briefing</div>
|
||
<h2 class="section-title">What decision are you trying to make?</h2>
|
||
<p class="section-sub">Tell us the question you need answered. We'll show you how Landvex can support it.</p>
|
||
|
||
<form class="contact-form" id="contact-form">
|
||
<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="email">Email</label>
|
||
<input type="email" id="email" name="email" placeholder="you@organisation.com" required>
|
||
</div>
|
||
<div class="form-group">
|
||
<label for="message">Message</label>
|
||
<textarea id="message" name="message" placeholder="Describe the decision you need to make — what you need to know, where, and why it matters..."></textarea>
|
||
</div>
|
||
<button type="submit" class="lv-btn lv-btn--lg">
|
||
Request briefing →
|
||
</button>
|
||
<p class="form-note">We don't spam. Your information stays private.</p>
|
||
<div id="form-message"></div>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
|
||
<p class="lv-disclaimer">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 →</a></p>
|
||
</section>
|
||
|
||
<footer class="lv-footer" role="contentinfo">
|
||
<div class="footer-inner">
|
||
<div>
|
||
<div class="footer-logo">LandveX</div>
|
||
<div class="footer-copy">© 2026 Landvex AB · Org.nr 559141-7042 · Tyresö, Sweden</div>
|
||
<div class="footer-tagline">Decision intelligence for the physical world.</div>
|
||
</div>
|
||
<div class="footer-links">
|
||
<a href="https://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 →</a>
|
||
<a href="mailto:contact@landvex.com">contact@landvex.com</a>
|
||
<a href="mailto:security@landvex.com" >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>
|
||
|
||
<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-vertical',
|
||
name: this.name.value,
|
||
email: this.email.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 = "\u2713 Request received. We'll be in touch within one business day.";
|
||
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 directly at contact@landvex.com.';
|
||
msgEl.style.display = 'block';
|
||
}
|
||
|
||
btn.disabled = false; btn.textContent = 'Request briefing →';
|
||
});
|
||
|
||
document.querySelectorAll('a[href^="#"]').forEach(a => {
|
||
a.addEventListener('click', e => {
|
||
const target = document.querySelector(a.getAttribute('href'));
|
||
if (target) { e.preventDefault(); target.scrollIntoView({ behavior: 'smooth', block: 'start' }); }
|
||
});
|
||
});
|
||
</script>
|
||
</body>
|
||
</html>
|
||
|
||
<section class="section-pad">
|
||
<div class="lv-container">
|
||
<div>
|
||
<div>
|
||
<div>Why Landvex</div>
|
||
<h2>Intelligence, not just data.</h2>
|
||
<p>Raw field observations are valuable. But decisions require analysis, confidence scoring, and contradiction detection. Landvex transforms quiXzoom field data into structured intelligence that underwriting and claims teams can act on.</p>
|
||
<p>Clients don't receive photos. They receive decisions.</p>
|
||
</div>
|
||
<div>
|
||
<div>Claims inspection market landscape</div>
|
||
<p>The insurance claims inspection market is served by traditional field adjusters, TPAs, and outsourced claims handlers. These channels face the same cost and speed constraints that create demand for faster, field-verified alternatives.</p>
|
||
<p>Landvex is building toward this market as a data and intelligence supplier. We are not affiliated with, endorsed by, or in a commercial relationship with any named market participants.</p>
|
||
<div>
|
||
<span>Interested in a claims data pilot?</span>
|
||
<a href="/contact/" >Start a conversation →</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|