Files
boc/landvex-all/compliance/index.html
T
Bernt 6989a98d75 feat: Passwordless cross-device authentication
- 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
2026-07-07 07:11:50 +00:00

247 lines
14 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<title>Compliance — Landvex</title>
<meta name="description" content="Landvex enterprise compliance: GDPR, Data Processing Agreement, AWS SOC 2 / ISO 27001 infrastructure, and enterprise security questionnaire process.">
<link rel="canonical" href="https://landvex.com/compliance/">
<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="alternate" hreflang="x-default" href="https://landvex.com/">
<link rel="alternate" hreflang="en" href="https://landvex.com/"> <link rel="stylesheet" href="/assets/css/landvex-complete.css">
<style>
:root {
--bg: #F2F2F7;
--surface: #FFFFFF;
--surface2: #F2F2F7;
--label: #000000;
--label2: #3C3C43;
--label3: rgba(60,60,67,0.65);
--separator: rgba(60,60,67,0.29);
--accent: #0066FF;
--font: -apple-system, "SF Pro Text", "Helvetica Neue", sans-serif;
--font-display: -apple-system, "SF Pro Display", "Helvetica Neue", sans-serif;
--radius-lg: 16px;
--radius-sm: 10px;
}
@media (prefers-color-scheme: dark) {
:root {
--bg: #000000;
--surface: #1C1C1E;
--surface2: #2C2C2E;
--label: #FFFFFF;
--label2: #EBEBF5;
--label3: rgba(235,235,245,0.65);
--separator: rgba(84,84,88,0.65);
}
}
* { box-sizing: border-box; margin: 0; padding: 0; -webkit-font-smoothing: antialiased; }
body {
font-family: var(--font);
background: var(--bg);
color: var(--label);
padding: env(safe-area-inset-top, 20px) env(safe-area-inset-right, 20px) env(safe-area-inset-bottom, 40px) env(safe-area-inset-left, 20px);
max-width: 680px;
margin: 0 auto;
}
header { padding: 32px 0 24px; text-align: center; }
header .logo { font-family: var(--font-display); font-size: 28px; font-weight: 700; letter-spacing: -0.5px; color: var(--accent); }
header h1 { font-family: var(--font-display); font-size: 22px; font-weight: 700; color: var(--label); margin-top: 6px; }
header p { font-size: 13px; color: var(--label3); margin-top: 4px; }
.card { background: var(--surface); border-radius: var(--radius-lg); padding: 20px; margin-bottom: 12px; }
.card-title { font-family: var(--font-display); font-size: 17px; font-weight: 600; color: var(--label); margin-bottom: 12px; }
p, li { font-size: 15px; line-height: 1.6; color: var(--label2); }
ul { padding-left: 20px; margin-top: 8px; }
li { margin-bottom: 6px; }
.row { display: flex; align-items: flex-start; gap: 16px; padding: 12px 0; border-bottom: 0.5px solid var(--separator); }
.row:last-child { border-bottom: none; }
.row-icon { width: 36px; height: 36px; border-radius: var(--radius-md); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.blue { background: rgba(0,102,255,0.12); }
.green { background: rgba(52,199,89,0.12); }
.orange { background: rgba(255,149,0,0.12); }
.red { background: rgba(255,59,48,0.12); }
.purple { background: rgba(175,82,222,0.12); }
.teal { background: rgba(50,173,230,0.12); }
.row-content { flex: 1; }
.row-label { font-size: 15px; font-weight: 600; color: var(--label); }
.row-sub { font-size: 13px; color: var(--label3); margin-top: 2px; line-height: 1.5; }
a { color: var(--accent); text-decoration: none; }
footer { text-align: center; padding: 24px 0 8px; font-size: 13px; color: var(--label3); }
footer a { color: var(--accent); }
@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="breadcrumb" aria-label="Main navigation">
<a href="/" >Home</a> / <span>compliance</span>
</nav>
<header class="lv-header">
<div class="logo"><a href="https://landvex.com/" >Landvex</a></div>
<h1>Compliance</h1>
<p>Last updated: 18 June 2026 &nbsp;&middot;&nbsp; Enterprise edition</p>
</header>
<div class="card">
<div class="card-title">Overview</div>
<p>Landvex AB processes enterprise client data in accordance with EU and applicable national data protection law. This page summarises our compliance posture for enterprise procurement, legal, and data governance teams. For formal documentation, contact <a href="mailto:compliance@landvex.com">compliance@landvex.com</a>.</p>
</div>
<div class="card" id="gdpr">
<div class="card-title">GDPR — EU 2016/679</div>
<div class="row">
<div class="row-icon blue">
<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="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
</div>
<div class="row-content">
<div class="row-label">Data minimisation</div>
<div class="row-sub">Landvex collects and processes only the personal data necessary for the specific purposes agreed in the enterprise service contract. No personal data is used for secondary purposes without a distinct legal basis.</div>
</div>
</div>
<div class="row">
<div class="row-icon green">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34c759" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="2" y1="12" x2="22" y2="12"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10z"/></svg>
</div>
<div class="row-content">
<div class="row-label">EU data residency</div>
<div class="row-sub">All enterprise client data is stored and processed on AWS infrastructure in Stockholm (eu-north-1). No data is transferred outside the European Economic Area without appropriate safeguards, including Standard Contractual Clauses where required.</div>
</div>
</div>
<div class="row">
<div class="row-icon orange">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#ff9500" 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"/></svg>
</div>
<div class="row-content">
<div class="row-label">Data Processing Agreement</div>
<div class="row-sub">A Data Processing Agreement compliant with GDPR Art. 28 is available to enterprise clients. Landvex acts as data processor for intelligence outputs delivered under contract. To request a DPA: <a href="mailto:privacy@landvex.com">privacy@landvex.com</a>.</div>
</div>
</div>
<div class="row">
<div class="row-icon purple">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#af52de" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>
</div>
<div class="row-content">
<div class="row-label">Data subject rights</div>
<div class="row-sub">Rights of access, rectification, erasure, portability, restriction, and objection are supported. Enterprise clients seeking to exercise rights on behalf of data subjects should contact <a href="mailto:privacy@landvex.com">privacy@landvex.com</a>. Requests are acknowledged within 5 business days.</div>
</div>
</div>
</div>
<div class="card" id="infrastructure">
<div class="card-title">Infrastructure Compliance</div>
<div class="row">
<div class="row-icon teal">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#32ade6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2" ry="2"/><rect x="2" y="14" width="20" height="8" rx="2" ry="2"/><line x1="6" y1="6" x2="6.01" y2="6"/><line x1="6" y1="18" x2="6.01" y2="18"/></svg>
</div>
<div class="row-content">
<div class="row-label">AWS SOC 2 Type II</div>
<div class="row-sub">Landvex runs on Amazon Web Services infrastructure, which maintains SOC 2 Type II certification. AWS compliance reports are available via AWS Artifact. Landvex application-level SOC 2 is planned.</div>
</div>
</div>
<div class="row">
<div class="row-icon blue">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#0066ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="11" rx="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></svg>
</div>
<div class="row-content">
<div class="row-label">ISO 27001 (infrastructure)</div>
<div class="row-sub">AWS eu-north-1 infrastructure is ISO 27001 certified at the infrastructure level. Landvex operates within this certified environment. Enterprise clients may request AWS certification documentation.</div>
</div>
</div>
<div class="row">
<div class="row-icon green">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34c759" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="2" y1="12" x2="22" y2="12"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10z"/></svg>
</div>
<div class="row-content">
<div class="row-label">EU-north-1 — Stockholm</div>
<div class="row-sub">All Landvex services run exclusively in AWS eu-north-1 (Stockholm, Sweden). Data never leaves the EU during ordinary processing. Cross-region failover, where used, remains within the EEA.</div>
</div>
</div>
</div>
<div class="card" id="questionnaires">
<div class="card-title">Security Questionnaires</div>
<div class="row">
<div class="row-icon orange">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#ff9500" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>
</div>
<div class="row-content">
<div class="row-label">5-business-day SLA</div>
<div class="row-sub">Landvex responds to enterprise security questionnaires and vendor assessment forms within 5 business days. We support standard questionnaire formats including CAIQ, SIG Lite, and custom procurement forms.</div>
</div>
</div>
<div class="row">
<div class="row-icon purple">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#af52de" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>
</div>
<div class="row-content">
<div class="row-label">Dedicated compliance contact</div>
<div class="row-sub">For security questionnaires, DPA requests, and compliance documentation: <a href="mailto:compliance@landvex.com">compliance@landvex.com</a></div>
</div>
</div>
</div>
<div class="card">
<div class="card-title">Related Documents</div>
<div class="row">
<div class="row-icon blue">
<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"/></svg>
</div>
<div class="row-content">
<div class="row-label"><a href="/dpa/">Data Processing Agreement</a></div>
<div class="row-sub">GDPR Art. 28 DPA and Standard Contractual Clauses for enterprise clients.</div>
</div>
</div>
<div class="row">
<div class="row-icon green">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34c759" 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"/></svg>
</div>
<div class="row-content">
<div class="row-label"><a href="/privacy/">Privacy Policy</a></div>
<div class="row-sub">Full data processing and retention policy for enterprise client data.</div>
</div>
</div>
<div class="row">
<div class="row-icon teal">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#32ade6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="11" rx="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></svg>
</div>
<div class="row-content">
<div class="row-label"><a href="/trust/">Trust Centre</a></div>
<div class="row-sub">Infrastructure security, data quality, and verification chain documentation.</div>
</div>
</div>
<div class="row">
<div class="row-icon orange">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#ff9500" 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"/></svg>
</div>
<div class="row-content">
<div class="row-label"><a href="/security/">Security</a></div>
<div class="row-sub">Technical security controls, penetration testing, and responsible disclosure.</div>
</div>
</div>
<div class="row">
<div class="row-icon purple">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#af52de" 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"/></svg>
</div>
<div class="row-content">
<div class="row-label"><a href="/terms/">Terms of Service</a></div>
<div class="row-sub">Enterprise service agreement terms and conditions.</div>
</div>
</div>
</div>
<footer class="lv-footer" role="contentinfo">
<p><a href="https://landvex.com/">Landvex</a> &nbsp;·&nbsp; <a href="/privacy/">Privacy</a> &nbsp;·&nbsp; <a href="/terms/">Terms</a> &nbsp;·&nbsp; <a href="/dpa/">DPA</a> &nbsp;·&nbsp; <a href="/trust/">Trust</a> &nbsp;·&nbsp; <a href="/cookie-policy/">Cookies</a></p>
<p>© 2026 Landvex AB · Org.nr 559141-7042 · Tyresö, Sweden &nbsp;·&nbsp; <a href="mailto:compliance@landvex.com">compliance@landvex.com</a></p>
</footer>
</body>
</html>