change
This commit is contained in:
1 parent
2458df3803
commit
755d91d0f4
8 files changed
+34
-29
No files matched your search
Binary file not shown.
|
Before Width: | Height: | Size: 6.6 MiB After Width: | Height: | Size: 6.6 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 6.6 MiB |
@@ -9,7 +9,6 @@ const home = localePath(lang, '/');
|
|||||||
const items = [
|
const items = [
|
||||||
{ href: `${home}#capabilities`, label: ui.nav.capabilities },
|
{ href: `${home}#capabilities`, label: ui.nav.capabilities },
|
||||||
{ href: localePath(lang, '/cipherverifier'), label: ui.nav.product },
|
{ href: localePath(lang, '/cipherverifier'), label: ui.nav.product },
|
||||||
{ href: `${home}#sectors`, label: ui.nav.sectors },
|
|
||||||
{ href: localePath(lang, '/insights'), label: ui.nav.insights },
|
{ href: localePath(lang, '/insights'), label: ui.nav.insights },
|
||||||
{ href: localePath(lang, '/team'), label: ui.nav.team },
|
{ href: localePath(lang, '/team'), label: ui.nav.team },
|
||||||
];
|
];
|
||||||
@@ -60,13 +59,20 @@ const isCurrent = (href: string) => href.split('#')[0] === path && !href.include
|
|||||||
padding-block: var(--space-3);
|
padding-block: var(--space-3);
|
||||||
transition:
|
transition:
|
||||||
max-width var(--dur-slow) var(--ease),
|
max-width var(--dur-slow) var(--ease),
|
||||||
padding-inline var(--dur-slow) var(--ease);
|
padding var(--dur-slow) var(--ease);
|
||||||
}
|
}
|
||||||
/* Once the page scrolls, the bar widens from the content column to the viewport. */
|
/* Once the page scrolls, the bar docks: full width, flush to the top, and as tall as the header
|
||||||
|
so nothing below moves. Its outer crosses would sit off-screen (and the side ones would make
|
||||||
|
the page scroll sideways), so they go, with the top and side borders; the bottom line stays. */
|
||||||
.header[data-scrolled] .header__shell {
|
.header[data-scrolled] .header__shell {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
padding-inline: var(--header-inset-scrolled);
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
.header[data-scrolled] .header__bar {
|
||||||
|
min-height: var(--header-height);
|
||||||
|
border-width: 0 0 var(--line);
|
||||||
|
}
|
||||||
|
.header[data-scrolled] .header__bar::after { content: none; }
|
||||||
.header__bar {
|
.header__bar {
|
||||||
pointer-events: auto;
|
pointer-events: auto;
|
||||||
isolation: isolate;
|
isolation: isolate;
|
||||||
@@ -80,7 +86,10 @@ const isCurrent = (href: string) => href.split('#')[0] === path && !href.include
|
|||||||
line-height: 1;
|
line-height: 1;
|
||||||
letter-spacing: var(--track-caps);
|
letter-spacing: var(--track-caps);
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
|
transition:
|
||||||
|
color var(--dur) var(--ease),
|
||||||
|
border-color var(--dur) var(--ease),
|
||||||
|
min-height var(--dur-slow) var(--ease);
|
||||||
}
|
}
|
||||||
/* The glass sits on a pseudo-element rather than the bar itself: a backdrop-filter on the bar
|
/* The glass sits on a pseudo-element rather than the bar itself: a backdrop-filter on the bar
|
||||||
would make it a backdrop root, and the mobile panel inside it could then blur nothing. */
|
would make it a backdrop root, and the mobile panel inside it could then blur nothing. */
|
||||||
@@ -183,6 +192,12 @@ const isCurrent = (href: string) => href.split('#')[0] === path && !href.include
|
|||||||
.header__nav.hud-frame { border: var(--line) solid var(--frame-color); }
|
.header__nav.hud-frame { border: var(--line) solid var(--frame-color); }
|
||||||
.header__nav.hud-frame::after { content: ''; }
|
.header__nav.hud-frame::after { content: ''; }
|
||||||
.header__nav[data-open] { display: block; }
|
.header__nav[data-open] { display: block; }
|
||||||
|
/* Docked: the panel hangs straight off the bar's bottom line, edge to edge. */
|
||||||
|
.header[data-scrolled] .header__nav {
|
||||||
|
top: calc(100% + var(--line));
|
||||||
|
border-width: 0 0 var(--line);
|
||||||
|
}
|
||||||
|
.header[data-scrolled] .header__nav.hud-frame::after { content: none; }
|
||||||
.header__list { flex-direction: column; }
|
.header__list { flex-direction: column; }
|
||||||
.header__list li { border-left: 0; }
|
.header__list li { border-left: 0; }
|
||||||
.header__list li + li { border-top: var(--line) solid var(--frame-color); }
|
.header__list li + li { border-top: var(--line) solid var(--frame-color); }
|
||||||
|
|||||||
@@ -68,7 +68,10 @@ const ui = t(lang);
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
padding-block: var(--space-9);
|
padding-block: var(--space-9);
|
||||||
}
|
}
|
||||||
.hero__title { max-width: 12em; }
|
.hero__title {
|
||||||
|
max-width: 12em;
|
||||||
|
font-size: var(--step-hero);
|
||||||
|
}
|
||||||
.hero__line {
|
.hero__line {
|
||||||
display: block;
|
display: block;
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
|
|||||||
+8
-11
@@ -14,18 +14,15 @@ export interface Person {
|
|||||||
name: string;
|
name: string;
|
||||||
role: RoleKey;
|
role: RoleKey;
|
||||||
portrait: ImageMetadata;
|
portrait: ImageMetadata;
|
||||||
github?: string;
|
|
||||||
linkedin?: string;
|
|
||||||
email: string;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export const team: Person[] = [
|
export const team: Person[] = [
|
||||||
{ name: 'Dr. Felix Klement', role: 'ceo', portrait: felix, github: 'https://github.com/fklement', linkedin: 'https://www.linkedin.com/in/felix-klement', email: 'felix.klement@ciphercell.de' },
|
{ name: 'Dr. Felix Klement', role: 'ceo', portrait: felix },
|
||||||
{ name: 'Dr. Florian Frank', role: 'cto', portrait: florian, github: 'https://github.com/FlorianFrank', linkedin: 'https://www.linkedin.com/in/florianfrank93/', email: 'florian.frank@ciphercell.de' },
|
{ name: 'Dr. Florian Frank', role: 'cto', portrait: florian },
|
||||||
{ name: 'Alexander Braml', role: 'engineer', portrait: alexander, github: 'https://github.com/AlexanderBraml', linkedin: 'https://www.linkedin.com/in/alexanderbraml/', email: 'alexander.braml@ciphercell.de' },
|
{ name: 'Alexander Braml', role: 'engineer', portrait: alexander },
|
||||||
{ name: 'Erik Foris', role: 'engineer', portrait: erik, github: 'https://github.com/ErikForis', email: 'erik.foris@ciphercell.de' },
|
{ name: 'Erik Foris', role: 'engineer', portrait: erik },
|
||||||
{ name: 'Marc Schlotzhauer', role: 'bizdev', portrait: marc, email: 'marc.schlotzhauer@ciphercell.de' },
|
{ name: 'Marc Schlotzhauer', role: 'bizdev', portrait: marc },
|
||||||
{ name: 'Philipp Mayr', role: 'engineer', portrait: philipp, github: 'https://github.com/truePhilipp', linkedin: 'https://www.linkedin.com/in/philipp-mayr/', email: 'philipp.mayr@ciphercell.de' },
|
{ name: 'Philipp Mayr', role: 'engineer', portrait: philipp },
|
||||||
{ name: 'Karin Kaufmann', role: 'studentF', portrait: karin, email: 'karin.kaufmann@ciphercell.de' },
|
{ name: 'Karin Kaufmann', role: 'studentF', portrait: karin },
|
||||||
{ name: 'Valentin Hirte', role: 'studentM', portrait: valentin, email: 'valentin.hirte@ciphercell.de' },
|
{ name: 'Valentin Hirte', role: 'studentM', portrait: valentin },
|
||||||
];
|
];
|
||||||
@@ -220,7 +220,6 @@ const en = {
|
|||||||
title: ['Researchers,', 'engineers,', 'architects.'],
|
title: ['Researchers,', 'engineers,', 'architects.'],
|
||||||
intro: 'The people who go deep on the problems that matter, from network software and private 5G to hardware and cloud-native systems.',
|
intro: 'The people who go deep on the problems that matter, from network software and private 5G to hardware and cloud-native systems.',
|
||||||
photoAlt: 'The CipherCell team on a staircase in the offices in Passau.',
|
photoAlt: 'The CipherCell team on a staircase in the offices in Passau.',
|
||||||
links: { github: 'GitHub', linkedin: 'LinkedIn', email: 'Email' },
|
|
||||||
roles: {
|
roles: {
|
||||||
ceo: 'Founder and CEO',
|
ceo: 'Founder and CEO',
|
||||||
cto: 'Founder and CTO',
|
cto: 'Founder and CTO',
|
||||||
@@ -437,7 +436,6 @@ const de: typeof en = {
|
|||||||
title: ['Forschende,', 'Ingenieure,', 'Architekten.'],
|
title: ['Forschende,', 'Ingenieure,', 'Architekten.'],
|
||||||
intro: 'Die Menschen, die sich in die Probleme vertiefen, auf die es ankommt: von Netzsoftware und privaten 5G-Netzen bis zu Hardware und Cloud-nativen Systemen.',
|
intro: 'Die Menschen, die sich in die Probleme vertiefen, auf die es ankommt: von Netzsoftware und privaten 5G-Netzen bis zu Hardware und Cloud-nativen Systemen.',
|
||||||
photoAlt: 'Das CipherCell-Team auf einer Treppe in den Büros in Passau.',
|
photoAlt: 'Das CipherCell-Team auf einer Treppe in den Büros in Passau.',
|
||||||
links: { github: 'GitHub', linkedin: 'LinkedIn', email: 'E-Mail' },
|
|
||||||
roles: {
|
roles: {
|
||||||
ceo: 'Gründer und CEO',
|
ceo: 'Gründer und CEO',
|
||||||
cto: 'Gründer und CTO',
|
cto: 'Gründer und CTO',
|
||||||
|
|||||||
@@ -53,11 +53,6 @@ const ui = t(lang);
|
|||||||
/>
|
/>
|
||||||
<h2 class="h3 person__name">{p.name}</h2>
|
<h2 class="h3 person__name">{p.name}</h2>
|
||||||
<p class="muted">{ui.team.roles[p.role]}</p>
|
<p class="muted">{ui.team.roles[p.role]}</p>
|
||||||
<ul class="person__links small" role="list">
|
|
||||||
{p.github && <li><a href={p.github} rel="noopener">{ui.team.links.github}</a></li>}
|
|
||||||
{p.linkedin && <li><a href={p.linkedin} rel="noopener">{ui.team.links.linkedin}</a></li>}
|
|
||||||
<li><a href={`mailto:${p.email}`}>{ui.team.links.email}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
</li>
|
||||||
))}
|
))}
|
||||||
</ul>
|
</ul>
|
||||||
@@ -91,8 +86,6 @@ const ui = t(lang);
|
|||||||
}
|
}
|
||||||
.person { display: grid; gap: var(--space-2); align-content: start; }
|
.person { display: grid; gap: var(--space-2); align-content: start; }
|
||||||
.person__img, :global(.person__img) { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; margin-bottom: var(--space-2); }
|
.person__img, :global(.person__img) { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; margin-bottom: var(--space-2); }
|
||||||
.person__links { display: flex; gap: var(--space-4); margin-top: var(--space-2); }
|
|
||||||
.person__links a { text-decoration: underline; text-decoration-thickness: var(--hairline); text-underline-offset: 0.2em; }
|
|
||||||
|
|
||||||
@media (min-width: 30rem) { .people { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
@media (min-width: 30rem) { .people { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
||||||
@media (min-width: 64rem) { .people { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
|
@media (min-width: 64rem) { .people { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
|
||||||
|
|||||||
@@ -29,6 +29,8 @@
|
|||||||
--font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
|
--font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
|
||||||
|
|
||||||
--step-display: clamp(2.75rem, 1.2rem + 6.2vw, 7rem);
|
--step-display: clamp(2.75rem, 1.2rem + 6.2vw, 7rem);
|
||||||
|
/* Home hero headline: about 10% below display, so the image keeps more of the frame. */
|
||||||
|
--step-hero: clamp(2.5rem, 1.1rem + 5.6vw, 6.25rem);
|
||||||
--step-h2: clamp(1.9rem, 1.1rem + 2.6vw, 3.25rem);
|
--step-h2: clamp(1.9rem, 1.1rem + 2.6vw, 3.25rem);
|
||||||
--step-h3: clamp(1.25rem, 1.05rem + 0.7vw, 1.6rem);
|
--step-h3: clamp(1.25rem, 1.05rem + 0.7vw, 1.6rem);
|
||||||
/* Card and footer titles: between h2 and h3, for headings that name rather than claim. */
|
/* Card and footer titles: between h2 and h3, for headings that name rather than claim. */
|
||||||
@@ -84,9 +86,6 @@
|
|||||||
|
|
||||||
/* Chrome */
|
/* Chrome */
|
||||||
--header-height: 4.5rem;
|
--header-height: 4.5rem;
|
||||||
/* Side inset of the menu bar once the page scrolls: it widens to the viewport, keeping the
|
|
||||||
same air as above and below so the corner crosses stay visible. */
|
|
||||||
--header-inset-scrolled: var(--space-3);
|
|
||||||
|
|
||||||
/* HUD frame (menu bar): one line width and colour for every line, borders and crosses alike. */
|
/* HUD frame (menu bar): one line width and colour for every line, borders and crosses alike. */
|
||||||
--hud-line-width: 1px;
|
--hud-line-width: 1px;
|
||||||
|
|||||||
Reference in new issue
Block a user