feat: vision page as manifesto
This commit is contained in:
parent
d9c75a1921
commit
f7bd9085de
1 changed files with 225 additions and 144 deletions
|
|
@ -1,211 +1,292 @@
|
|||
---
|
||||
import AppLayout from '../layouts/AppLayout.astro';
|
||||
import ProjectLockup from '../components/ProjectLockup.astro';
|
||||
|
||||
const user = Astro.locals.user;
|
||||
---
|
||||
<AppLayout title="Vision" user={user}>
|
||||
<div class="page">
|
||||
|
||||
<header class="page-header">
|
||||
<!-- ── Hero ───────────────────────────────────────────────────── -->
|
||||
<header class="hero">
|
||||
<p class="label-sm eyebrow">Vision</p>
|
||||
<h1 class="display-md page-title">Why this matters.</h1>
|
||||
<h1 class="hero-headline">
|
||||
A European platform for <em>sovereign AI.</em>
|
||||
</h1>
|
||||
</header>
|
||||
|
||||
<div class="content">
|
||||
|
||||
<!-- Fenja AI -->
|
||||
<section class="section">
|
||||
<h2 class="headline-md section-title">Fenja AI</h2>
|
||||
<div class="prose">
|
||||
<p class="body-lg">
|
||||
Fenja enables the safe, sovereign use of Artificial Intelligence in organisations
|
||||
where data is highly sensitive, operations are mission-critical, and strict data
|
||||
privacy is essential. We are building the premier solution for public authorities
|
||||
and companies operating in heavily regulated industries — pharmaceuticals, critical
|
||||
infrastructure, finance — where standard AI solutions hosted on foreign-owned public
|
||||
clouds are simply not a viable or compliant option.
|
||||
</p>
|
||||
<p class="body-lg">
|
||||
Many organisations are eager to harness the transformative power of AI but cannot
|
||||
accept the risk of their data, workflows, and critical functions becoming dependent
|
||||
on external providers with foreign ownership and control. Fenja directly addresses
|
||||
this gap by enabling highly advanced, customer-hosted AI within the client's own
|
||||
secure infrastructure. Data remains under absolute, localised control while we
|
||||
deliver the robust security, traceability, and documentation demanded by the market.
|
||||
</p>
|
||||
<p class="body-lg">
|
||||
As the global demand for digital sovereignty accelerates, Fenja is positioned to
|
||||
generate profound societal value. We are making cutting-edge AI safely usable in
|
||||
the most critical of functions without ever compromising security or compliance.
|
||||
Backed by investment from the Innovation Fund, we are accelerating product
|
||||
development, executing high-impact pilot projects, and establishing foundational
|
||||
customer cases. Our long-term ambition is to establish Fenja as the definitive
|
||||
Danish and European platform for secure, locally controlled AI in regulated
|
||||
environments.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- Project Bifrost -->
|
||||
<section class="section">
|
||||
<h2 class="headline-md section-title">Project Bifrost</h2>
|
||||
<div class="prose">
|
||||
<p class="body-lg">
|
||||
Project Bifrost is one of the first stones in the foundation of Denmark and the EU's
|
||||
sovereign AI platform — a platform controlled by its customers, that understands not
|
||||
just your business, but you and your department, and builds on that knowledge
|
||||
automatically. Open-source LLMs in a modern, secure, customer-hosted environment.
|
||||
</p>
|
||||
<p class="body-lg statement">
|
||||
This is Project Bifrost.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- What comes after -->
|
||||
<section class="section">
|
||||
<h2 class="headline-md section-title">What comes after</h2>
|
||||
<p class="body-md section-intro">
|
||||
The current pilot is one chapter. The platform we are building toward is something
|
||||
more ambitious. In reserved terms:
|
||||
<!-- ── The stakes ─────────────────────────────────────────────── -->
|
||||
<section class="section stakes-section">
|
||||
<h2 class="section-heading label-sm">The stakes</h2>
|
||||
<div class="prose-column">
|
||||
<p class="body-lg">
|
||||
Foreign governments can compel access to Europe's most sensitive data.
|
||||
Foreign companies can cut off access to the AI that runs on it — overnight,
|
||||
without warning, and with no recourse. Today, 97% of AI foundational model
|
||||
usage falls outside EU jurisdiction. For hospitals, public authorities,
|
||||
defence contractors, and financial institutions, this is not an abstract risk.
|
||||
It is an active exposure.
|
||||
</p>
|
||||
<ul class="after-list">
|
||||
<li class="after-item">
|
||||
<h3 class="headline-sm item-title">Full developer agentic experience</h3>
|
||||
<p class="body-md item-body">
|
||||
A platform where developers can compose, orchestrate, and deploy AI agents that
|
||||
work within your infrastructure — deeply integrated, auditable, and under your control.
|
||||
</p>
|
||||
</li>
|
||||
<li class="after-item">
|
||||
<h3 class="headline-sm item-title">Agentic data extraction and analysis</h3>
|
||||
<p class="body-md item-body">
|
||||
Agents that move across your document corpus, surface connections, extract
|
||||
structured information, and return findings with provenance intact.
|
||||
</p>
|
||||
</li>
|
||||
<li class="after-item">
|
||||
<h3 class="headline-sm item-title">Self-service agent work automation</h3>
|
||||
<p class="body-md item-body">
|
||||
Non-technical users define repeatable tasks in natural language. The platform
|
||||
handles execution, scheduling, and audit — without IT involvement.
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<p class="body-lg">
|
||||
For critical infrastructure, healthcare, defence, and finance, reliance on
|
||||
foreign-controlled AI is not a strategy. It is a vulnerability — one that
|
||||
organisations can no longer afford to ignore as AI becomes central to how
|
||||
decisions are made.
|
||||
</p>
|
||||
</div>
|
||||
<blockquote class="pulled-quote">
|
||||
<p class="pulled-quote__text">We can't build our digital fortress on foreign clouds.</p>
|
||||
<footer class="pulled-quote__attribution">— The imperative behind Project Bifrost</footer>
|
||||
</blockquote>
|
||||
</section>
|
||||
|
||||
<!-- ── What Fenja is building ─────────────────────────────────── -->
|
||||
<section class="section">
|
||||
<h2 class="section-heading label-sm">What we are building</h2>
|
||||
<div class="prose-column">
|
||||
<p class="body-lg">
|
||||
Fenja enables the safe, sovereign use of AI in organisations where data is
|
||||
highly sensitive, operations are mission-critical, and strict privacy is
|
||||
non-negotiable. We are building the solution for public authorities and
|
||||
regulated industries — pharmaceuticals, critical infrastructure, finance —
|
||||
where standard AI hosted on foreign-owned public clouds is simply not
|
||||
a compliant option.
|
||||
</p>
|
||||
<p class="body-lg">
|
||||
The core proposition is direct: highly advanced, customer-hosted AI within
|
||||
the client's own secure infrastructure. Data remains under absolute, localised
|
||||
control. The AI understands the organisation's language, context, and structure.
|
||||
Every response is traceable to its source documents. Nothing leaves the building.
|
||||
</p>
|
||||
<p class="body-lg">
|
||||
As global demand for digital sovereignty accelerates, this becomes a matter of
|
||||
strategic necessity. Backed by Innofounder, we are executing the first pilot
|
||||
projects and building the foundational customer cases. The long-term ambition
|
||||
is to establish Fenja as the definitive Danish and European platform for
|
||||
locally controlled AI in regulated environments.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- ── Project Bifrost in context ────────────────────────────── -->
|
||||
<section class="section bifrost-context-section">
|
||||
<div class="bifrost-lockup-col">
|
||||
<ProjectLockup size="lg" alignment="left" showWordmark={false} />
|
||||
</div>
|
||||
<div class="bifrost-text-col">
|
||||
<h2 class="section-heading label-sm">The first step</h2>
|
||||
<div class="prose-column">
|
||||
<p class="body-lg">
|
||||
Project Bifrost is not a proof of concept in a lab. It is a working
|
||||
collaboration with five organisations who are already operating in the
|
||||
environments this platform is built for. Two are running paid pilots.
|
||||
Three are on the Customer Advisory Board. All of them are shaping what
|
||||
the platform becomes.
|
||||
</p>
|
||||
<p class="body-lg">
|
||||
The trajectory is clear: from a working pilot → the Danish standard for
|
||||
sovereign AI deployment → the foundation for EU-scale expansion. Project
|
||||
Bifrost participants are at the beginning of that arc — helping to define
|
||||
what it looks like at every step.
|
||||
</p>
|
||||
</div>
|
||||
<div class="horizon-list">
|
||||
<div class="horizon-item">
|
||||
<span class="horizon-label label-sm">Now</span>
|
||||
<p class="horizon-desc body-md">Pilot — five organisations shaping the first working version.</p>
|
||||
</div>
|
||||
<div class="horizon-item">
|
||||
<span class="horizon-label label-sm">Next</span>
|
||||
<p class="horizon-desc body-md">Danish standard — a proven, replicable sovereign AI deployment.</p>
|
||||
</div>
|
||||
<div class="horizon-item">
|
||||
<span class="horizon-label label-sm">Further</span>
|
||||
<p class="horizon-desc body-md">EU expansion — the platform for regulated AI across Europe.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- ── Closing ─────────────────────────────────────────────────── -->
|
||||
<section class="closing-section">
|
||||
<p class="closing-text">
|
||||
This is not a product that gets built in a boardroom.
|
||||
It gets built with the organisations who will depend on it.
|
||||
That is what Project Bifrost is for.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</AppLayout>
|
||||
|
||||
<style>
|
||||
.page {
|
||||
padding: var(--space-12) var(--space-20) var(--space-16);
|
||||
max-width: var(--content-max);
|
||||
margin: 0 auto;
|
||||
padding: 0 var(--space-20) var(--space-16);
|
||||
}
|
||||
|
||||
/* ── Header ──────────────────────────────────────────────────────── */
|
||||
.page-header {
|
||||
margin-bottom: var(--space-12);
|
||||
max-width: 44rem;
|
||||
/* ── Hero ────────────────────────────────────────────────────────── */
|
||||
.hero {
|
||||
padding-top: var(--space-16);
|
||||
padding-bottom: var(--space-12);
|
||||
max-width: 52rem;
|
||||
border-bottom: var(--ghost-border);
|
||||
}
|
||||
|
||||
.eyebrow {
|
||||
letter-spacing: var(--tracking-wider);
|
||||
text-transform: uppercase;
|
||||
color: var(--on-surface-muted);
|
||||
margin-bottom: var(--space-3);
|
||||
margin-bottom: var(--space-4);
|
||||
}
|
||||
|
||||
.page-title {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* ── Content ─────────────────────────────────────────────────────── */
|
||||
.content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-16);
|
||||
max-width: 52rem;
|
||||
}
|
||||
|
||||
/* ── Section ─────────────────────────────────────────────────────── */
|
||||
.section {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-6);
|
||||
}
|
||||
|
||||
.section-title {
|
||||
.hero-headline {
|
||||
font-family: var(--font-serif);
|
||||
font-size: var(--text-display-md);
|
||||
font-weight: 400;
|
||||
letter-spacing: var(--tracking-snug);
|
||||
margin: 0;
|
||||
letter-spacing: var(--tracking-tight);
|
||||
line-height: var(--leading-snug);
|
||||
color: var(--on-surface);
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.section-intro {
|
||||
color: var(--on-surface-variant);
|
||||
margin: 0;
|
||||
.hero-headline em {
|
||||
font-weight: 700;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/* ── Sections ────────────────────────────────────────────────────── */
|
||||
.section {
|
||||
padding: var(--space-12) 0;
|
||||
border-bottom: var(--ghost-border);
|
||||
}
|
||||
|
||||
.section-heading {
|
||||
letter-spacing: var(--tracking-wider);
|
||||
text-transform: uppercase;
|
||||
color: var(--on-surface-muted);
|
||||
margin-bottom: var(--space-6);
|
||||
}
|
||||
|
||||
/* ── Prose ───────────────────────────────────────────────────────── */
|
||||
.prose {
|
||||
.prose-column {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-5);
|
||||
max-width: 44rem;
|
||||
}
|
||||
|
||||
.prose .body-lg {
|
||||
.prose-column .body-lg {
|
||||
margin: 0;
|
||||
color: var(--on-surface-variant);
|
||||
line-height: var(--leading-relaxed);
|
||||
max-width: var(--reading-max);
|
||||
}
|
||||
|
||||
.statement {
|
||||
font-family: var(--font-serif);
|
||||
font-size: var(--text-headline-sm) !important;
|
||||
font-weight: 700;
|
||||
font-style: italic;
|
||||
color: var(--on-surface) !important;
|
||||
letter-spacing: var(--tracking-snug);
|
||||
/* ── Pulled quote ────────────────────────────────────────────────── */
|
||||
.stakes-section {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-8);
|
||||
}
|
||||
|
||||
/* ── After list ──────────────────────────────────────────────────── */
|
||||
.after-list {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
.pulled-quote {
|
||||
margin: 0;
|
||||
padding: 0 0 0 var(--space-6);
|
||||
border-left: 3px solid var(--secondary);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-3);
|
||||
max-width: 44rem;
|
||||
}
|
||||
|
||||
.pulled-quote__text {
|
||||
font-family: var(--font-serif);
|
||||
font-size: var(--text-display-md);
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
letter-spacing: var(--tracking-tight);
|
||||
line-height: var(--leading-snug);
|
||||
color: var(--on-surface-variant);
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.pulled-quote__attribution {
|
||||
font-family: var(--font-sans);
|
||||
font-size: var(--text-label-md);
|
||||
letter-spacing: var(--tracking-wide);
|
||||
text-transform: uppercase;
|
||||
color: var(--on-surface-muted);
|
||||
}
|
||||
|
||||
/* ── Bifrost context — two-column ───────────────────────────────── */
|
||||
.bifrost-context-section {
|
||||
display: grid;
|
||||
grid-template-columns: 14rem 1fr;
|
||||
gap: var(--space-10);
|
||||
align-items: start;
|
||||
}
|
||||
|
||||
.bifrost-lockup-col {
|
||||
padding-top: var(--space-7);
|
||||
}
|
||||
|
||||
.bifrost-text-col {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-8);
|
||||
}
|
||||
|
||||
.bifrost-text-col .section-heading {
|
||||
margin-bottom: var(--space-4);
|
||||
}
|
||||
|
||||
/* ── Horizon list ────────────────────────────────────────────────── */
|
||||
.horizon-list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0;
|
||||
}
|
||||
|
||||
.after-item {
|
||||
padding: var(--space-6) 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-3);
|
||||
.horizon-item {
|
||||
display: grid;
|
||||
grid-template-columns: 4.5rem 1fr;
|
||||
gap: var(--space-4);
|
||||
align-items: baseline;
|
||||
padding: var(--space-4) 0;
|
||||
border-top: var(--ghost-border);
|
||||
}
|
||||
.after-item:last-child {
|
||||
.horizon-item:last-child {
|
||||
border-bottom: var(--ghost-border);
|
||||
}
|
||||
|
||||
.item-title {
|
||||
font-family: var(--font-serif);
|
||||
font-weight: 400;
|
||||
letter-spacing: var(--tracking-snug);
|
||||
margin: 0;
|
||||
color: var(--on-surface);
|
||||
.horizon-label {
|
||||
letter-spacing: var(--tracking-wider);
|
||||
text-transform: uppercase;
|
||||
color: var(--on-surface-muted);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.item-body {
|
||||
margin: 0;
|
||||
.horizon-desc {
|
||||
color: var(--on-surface-variant);
|
||||
max-width: var(--reading-max);
|
||||
margin: 0;
|
||||
line-height: var(--leading-relaxed);
|
||||
}
|
||||
|
||||
/* ── Closing ─────────────────────────────────────────────────────── */
|
||||
.closing-section {
|
||||
padding: var(--space-16) 0 var(--space-12);
|
||||
max-width: 44rem;
|
||||
}
|
||||
|
||||
.closing-text {
|
||||
font-family: var(--font-serif);
|
||||
font-size: var(--text-headline-md);
|
||||
font-weight: 400;
|
||||
font-style: italic;
|
||||
letter-spacing: var(--tracking-snug);
|
||||
line-height: var(--leading-relaxed);
|
||||
color: var(--on-surface-variant);
|
||||
margin: 0;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue