This commit is contained in:
Felix Klement committed 2026-10-04 11:49:07 +02:00
1 parent c3f4651e71
commit c72d45740e
3 files changed
+21 -25

No files matched your search

+6 -6
View File
@@ -2725,9 +2725,9 @@
}
},
"node_modules/devalue": {
"version": "5.9.2",
"resolved": "https://registry.npmjs.org/devalue/-/devalue-5.9.2.tgz",
"integrity": "sha512-po4PAY5c53tw5XMocSnf8A/5OHhbbUftpr93aEN6BBoAdntUmK7vu7wOATqvt7cXO7m1Cl4gMVn6p7n6n4mj0w==",
"version": "5.9.4",
"resolved": "https://registry.npmjs.org/devalue/-/devalue-5.9.4.tgz",
"integrity": "sha512-sPAT4pztbu6586/hrhOnMKS17IJrvg12mXiSPSS3W5qDeN2RGgvZ0diZCm31dBbnevfVmujNO3IM2wrS4Y2Rhg==",
"license": "MIT"
},
"node_modules/devlop": {
@@ -3153,9 +3153,9 @@
}
},
"node_modules/http-cache-semantics": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz",
"integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==",
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.3.0.tgz",
"integrity": "sha512-M5t5LlJpS1UHMjvwRQVdFHvPISGeLAxNcrWuJkeGh0KxsqCHZ1O3NXZU/8x7cD0BDcGW8kapxMKTvwlqrNkHkA==",
"license": "BSD-2-Clause"
},
"node_modules/iron-webcrypto": {
+4 -4
View File
@@ -5,10 +5,10 @@
"private": true,
"types": ".design-sync/ds-types/index.d.ts",
"scripts": {
"dev": "astro dev",
"build": "astro build",
"preview": "astro preview",
"check": "astro check"
"dev": "ASTRO_TELEMETRY_DISABLED=1 astro dev",
"build": "ASTRO_TELEMETRY_DISABLED=1 astro build",
"preview": "ASTRO_TELEMETRY_DISABLED=1 astro preview",
"check": "ASTRO_TELEMETRY_DISABLED=1 astro check"
},
"dependencies": {
"@fontsource-variable/inter-tight": "^5.3.0",
+11 -15
View File
@@ -20,20 +20,21 @@ const ui = t(lang);
</div>
</section>
<div class="team-photo">
<div class="container">
<figure class="team-photo">
<Picture
src={teamPhoto}
alt={ui.team.photoAlt}
formats={['avif']}
fallbackFormat="webp"
widths={[640, 960, 1440]}
sizes="100vw"
widths={[640, 960, 1296, 1920, 2592]}
sizes="(min-width: 90rem) 81rem, calc(100vw - 2 * clamp(1.25rem, 5vw, 5rem))"
loading="eager"
decoding="async"
class="img-cover img-mono team-photo__img"
class="img-mono team-photo__img"
pictureAttributes={{ class: 'team-photo__picture' }}
/>
<div class="team-photo__overlay" aria-hidden="true"></div>
</figure>
</div>
<section class="section" aria-label={ui.nav.team}>
@@ -72,16 +73,11 @@ const ui = t(lang);
.team-intro__lead { grid-column: 9 / span 4; align-self: end; }
}
.team-photo {
position: relative;
/* Explicit height: an aspect-ratio with max-height would transfer the cap to the width. */
height: min(66.67vw, 80svh);
min-height: 20rem;
overflow: hidden;
}
:global(.team-photo__picture) { position: absolute; inset: 0; }
.team-photo__img, :global(.team-photo__img) { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.team-photo__overlay { position: absolute; inset: 0; background: var(--overlay); opacity: 0.6; }
/* Inside the content column at the photo's own proportions: no crop, no zoom, so every pixel
the browser shows exists in the source. Widths go to 2592 for retina screens. */
.team-photo { margin: 0; }
:global(.team-photo__picture) { display: block; }
.team-photo__img, :global(.team-photo__img) { display: block; width: 100%; height: auto; }
.people {
display: grid;