diff --git a/src/assets/images/background.png b/src/assets/images/background.png index 5d0ea53..0d2ad2a 100644 Binary files a/src/assets/images/background.png and b/src/assets/images/background.png differ diff --git a/src/assets/images/background_3.png b/src/assets/images/background_3.png new file mode 100644 index 0000000..5d0ea53 Binary files /dev/null and b/src/assets/images/background_3.png differ diff --git a/src/components/Header.astro b/src/components/Header.astro index fa8d03d..5e0f236 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -9,7 +9,6 @@ const home = localePath(lang, '/'); const items = [ { href: `${home}#capabilities`, label: ui.nav.capabilities }, { 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, '/team'), label: ui.nav.team }, ]; @@ -60,13 +59,20 @@ const isCurrent = (href: string) => href.split('#')[0] === path && !href.include padding-block: var(--space-3); transition: 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 { 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 { pointer-events: auto; isolation: isolate; @@ -80,7 +86,10 @@ const isCurrent = (href: string) => href.split('#')[0] === path && !href.include line-height: 1; letter-spacing: var(--track-caps); 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 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::after { content: ''; } .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 li { border-left: 0; } .header__list li + li { border-top: var(--line) solid var(--frame-color); } diff --git a/src/components/home/Hero.astro b/src/components/home/Hero.astro index 235ddaf..e309a0b 100644 --- a/src/components/home/Hero.astro +++ b/src/components/home/Hero.astro @@ -68,7 +68,10 @@ const ui = t(lang); width: 100%; padding-block: var(--space-9); } - .hero__title { max-width: 12em; } + .hero__title { + max-width: 12em; + font-size: var(--step-hero); + } .hero__line { display: block; opacity: 0; diff --git a/src/data/team.ts b/src/data/team.ts index aa1f1e3..e82c085 100644 --- a/src/data/team.ts +++ b/src/data/team.ts @@ -14,18 +14,15 @@ export interface Person { name: string; role: RoleKey; portrait: ImageMetadata; - github?: string; - linkedin?: string; - email: string; } 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. Florian Frank', role: 'cto', portrait: florian, github: 'https://github.com/FlorianFrank', linkedin: 'https://www.linkedin.com/in/florianfrank93/', email: 'florian.frank@ciphercell.de' }, - { 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: 'Erik Foris', role: 'engineer', portrait: erik, github: 'https://github.com/ErikForis', email: 'erik.foris@ciphercell.de' }, - { name: 'Marc Schlotzhauer', role: 'bizdev', portrait: marc, email: 'marc.schlotzhauer@ciphercell.de' }, - { 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: 'Karin Kaufmann', role: 'studentF', portrait: karin, email: 'karin.kaufmann@ciphercell.de' }, - { name: 'Valentin Hirte', role: 'studentM', portrait: valentin, email: 'valentin.hirte@ciphercell.de' }, + { name: 'Dr. Felix Klement', role: 'ceo', portrait: felix }, + { name: 'Dr. Florian Frank', role: 'cto', portrait: florian }, + { name: 'Alexander Braml', role: 'engineer', portrait: alexander }, + { name: 'Erik Foris', role: 'engineer', portrait: erik }, + { name: 'Marc Schlotzhauer', role: 'bizdev', portrait: marc }, + { name: 'Philipp Mayr', role: 'engineer', portrait: philipp }, + { name: 'Karin Kaufmann', role: 'studentF', portrait: karin }, + { name: 'Valentin Hirte', role: 'studentM', portrait: valentin }, ]; diff --git a/src/i18n/ui.ts b/src/i18n/ui.ts index b2b6b60..2ede9d3 100644 --- a/src/i18n/ui.ts +++ b/src/i18n/ui.ts @@ -220,7 +220,6 @@ const en = { 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.', photoAlt: 'The CipherCell team on a staircase in the offices in Passau.', - links: { github: 'GitHub', linkedin: 'LinkedIn', email: 'Email' }, roles: { ceo: 'Founder and CEO', cto: 'Founder and CTO', @@ -437,7 +436,6 @@ const de: typeof en = { 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.', photoAlt: 'Das CipherCell-Team auf einer Treppe in den Büros in Passau.', - links: { github: 'GitHub', linkedin: 'LinkedIn', email: 'E-Mail' }, roles: { ceo: 'Gründer und CEO', cto: 'Gründer und CTO', diff --git a/src/pages/_Team.astro b/src/pages/_Team.astro index 67606ff..6250a57 100644 --- a/src/pages/_Team.astro +++ b/src/pages/_Team.astro @@ -53,11 +53,6 @@ const ui = t(lang); />
{ui.team.roles[p.role]}
-