Opa Martins Foto, kräftigere Farben, Bugfixes
- Foto von Opa Martin eingesetzt (assets/opa-martin.jpg, 4:5) - Pastelle eine Stufe kräftiger (sun-200, sky-100, coral-100), Icon-Chips im Vollton, Hero-Weißschleier auf kurze Kante gekürzt, Header deckend - Kontraste auf den neuen Gründen neu gerechnet, Display-Typo dort dunklere Stufe - E-Mail bricht auf dem Handy nach dem @ statt mitten in gmail.com - Trust-Icons im Verein-Hero waren auf gleichfarbigem Grund unsichtbar - Footer 'Über uns' springt zur Geschichte statt auf die Startseite Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
4a2c4a2d02
commit
2defdc9856
9 files changed
+100
-48
No files matched your search
Binary file not shown.
|
After Width: | Height: | Size: 71 KiB |
+52
-27
@@ -43,6 +43,12 @@
|
||||
Neun gleichmäßige Stufen (56/42/32/24/19/17/15/13/11) auf sechs reduziert.
|
||||
Gestrichen: 42, 24, 19, 15. Bleibt: Display / 30 / 20 / 17 / 13 / 11.
|
||||
|
||||
4. KRÄFTIGERE TÖNUNGEN (2026-09-24) — zweite Kundenrückmeldung "zu transparent".
|
||||
Referenz wie oben: der DS-Eintrag hält fest, dass Pastell allein nicht trägt.
|
||||
sun-100 → sun-200, sky-50 → sky-100, coral-50 → coral-100, Icon-Chips im Vollton,
|
||||
Hero-Schleier auf eine kurze Kante gekürzt, Header deckend. Auf den neuen Gründen
|
||||
Display-Typo in der dunkleren Stufe (≥3.87). Messwerte in DESIGN.md, Abschnitt 1b.
|
||||
|
||||
ASSETS: Die Client-Logos kamen als JPEG mit eingebackenem weissem Kasten, im Handoff
|
||||
per mix-blend-mode:multiply kaschiert — das bricht auf jedem dunkleren Grund. Beide sind
|
||||
jetzt echt freigestellt (Flood-Fill ueber randverbundenes Nahe-Weiss + weiche Kante,
|
||||
@@ -67,17 +73,22 @@
|
||||
--coral-700:#B03422; /* Hover: 6.25 */
|
||||
--coral-800:#A82F1E; /* Press: 6.80 */
|
||||
|
||||
/* Kräftigere Tönungen — 2026-09-24, siehe Abweichung 4. Die 50/100-Pastelle
|
||||
lasen gegen Weiß wie verwaschen ("zu transparent"). */
|
||||
--sun-200:#FBE3A0; /* ink-700 darauf 11.44 */
|
||||
--coral-100:#FFD8CE; /* ink-700 darauf 11.01 */
|
||||
|
||||
/* Getönte Neutrale (blaustichig, kein reines Grau) */
|
||||
--ink-300:#8B94A0; --ink-500:#4A5560; --ink-700:#232A33;
|
||||
--line-soft:#EDEFF2; --line:#DFE3E8;
|
||||
|
||||
--surface-page:#FFFFFF; --surface-card:#FFFFFF; --surface-sunk:#F5F7FA;
|
||||
--surface-band:#FDF4DC; --surface-band-cool:#EAF4FC; --surface-footer:#FDF4DC;
|
||||
--surface-band:var(--sun-200); --surface-band-cool:var(--sky-100); --surface-footer:var(--sun-200);
|
||||
|
||||
/* Pro Seite überschrieben — genau ein Identitätsakzent */
|
||||
--accent:var(--sky-500);
|
||||
--accent-text:var(--sky-600);
|
||||
--accent-soft:var(--sky-50);
|
||||
--accent-soft:var(--sky-100);
|
||||
--accent-line:var(--sky-400);
|
||||
|
||||
/* Typo — sechs Stufen */
|
||||
@@ -114,7 +125,7 @@
|
||||
.page-verein{
|
||||
--accent:var(--sun-600);
|
||||
--accent-text:var(--sun-700);
|
||||
--accent-soft:var(--sun-100);
|
||||
--accent-soft:var(--sun-200);
|
||||
--accent-line:var(--sun-400);
|
||||
}
|
||||
|
||||
@@ -139,9 +150,9 @@ a:hover{color:var(--sky-600)}
|
||||
/* Getoente Vollflaechen statt durchgehendem Weiss. Geben der Seite Rhythmus und
|
||||
tragen den groessten Teil der Farbe — ohne einen einzigen Fliesstext einzufaerben. */
|
||||
.field{padding-block:var(--space-16)}
|
||||
.field--cool{background:var(--sky-50)}
|
||||
.field--warm{background:var(--sun-100)}
|
||||
.field--rose{background:var(--coral-50)}
|
||||
.field--cool{background:var(--sky-100)}
|
||||
.field--warm{background:var(--sun-200)}
|
||||
.field--rose{background:var(--coral-100)}
|
||||
.field--sunk{background:var(--surface-sunk)}
|
||||
|
||||
/* Ein gesaettigtes Vollflaechen-Band pro Seite. Pastelltoene allein trugen die Seite
|
||||
@@ -172,7 +183,7 @@ a:hover{color:var(--sky-600)}
|
||||
/* Weiß statt --sky-400: weiße Navigation auf Hellblau misst 2.87 und fällt durch. */
|
||||
.hdr{
|
||||
position:sticky; top:0; z-index:50; height:var(--header-h);
|
||||
background:rgba(255,255,255,.92); backdrop-filter:saturate(1.4) blur(10px);
|
||||
background:var(--surface-page); /* deckend: das durchscheinende Weiß wirkte milchig */
|
||||
border-bottom:1px solid var(--line-soft);
|
||||
}
|
||||
.hdr__in{
|
||||
@@ -276,6 +287,13 @@ a:hover{color:var(--sky-600)}
|
||||
.hl .c-sun{color:var(--sun-600)}
|
||||
.hl .c-coral{color:var(--coral-500)}
|
||||
.hl .on{color:var(--accent)}
|
||||
/* Beide Heros stehen seit 2026-09-24 auf getöntem Grund (sky-100 / sun-200). Dort
|
||||
fielen die Buntwerte auf ~3.0-3.1 — knapp an der Schwelle. Deshalb die dunklere
|
||||
Stufe derselben Familie: auf sky-100 4.35 / 4.04 / 3.87, auf sun-200 4.43 / 4.11 / 3.93. */
|
||||
.hero .hl .c-sky{color:var(--sky-600)}
|
||||
.hero .hl .c-sun{color:var(--sun-700)}
|
||||
.hero .hl .c-coral{color:var(--coral-600)}
|
||||
.hero .trust span{color:var(--ink-700)}
|
||||
|
||||
.hero__sub{font:var(--t-body); color:var(--ink-700); max-width:34ch}
|
||||
.hero__actions{display:flex; flex-wrap:wrap; gap:var(--space-3)}
|
||||
@@ -290,7 +308,7 @@ a:hover{color:var(--sky-600)}
|
||||
.trust{display:flex; align-items:center; gap:10px}
|
||||
.trust__chip{
|
||||
width:30px; height:30px; flex:none; border-radius:var(--radius-circle,50%);
|
||||
display:grid; place-items:center; background:var(--accent-soft); color:var(--accent-text);
|
||||
display:grid; place-items:center; background:var(--accent); color:#fff; /* Icon 3.86 / 3.92 */
|
||||
}
|
||||
.trust svg{width:15px; height:15px; flex:none}
|
||||
.trust b{display:block; font:700 15px/1.3 'Nunito','Segoe UI',sans-serif; color:var(--ink-700)}
|
||||
@@ -300,21 +318,26 @@ a:hover{color:var(--sky-600)}
|
||||
unter ~820px fast vollständig zu. Unter 820px stapelt der Hero jetzt — Foto oben,
|
||||
Text darunter auf voller Fläche. */
|
||||
@media (min-width:820px){
|
||||
.hero{min-height:clamp(540px,64vw,680px); display:grid}
|
||||
/* Kante der Fläche folgt der Textspalte: .wrap ist zentriert, die Spalte endet bei
|
||||
50% - 590px + 24px + 560px. max() hält sie bei schmalen Fenstern bei 600px. */
|
||||
.hero{min-height:clamp(540px,64vw,680px); display:grid; --scrim-edge:max(600px, calc(50% + 10px))}
|
||||
.hero__in{align-self:center}
|
||||
.hero--shop .hero__scrim{
|
||||
background:linear-gradient(98deg,#FFF 0,#FFF 430px,rgba(255,255,255,.92) 560px,rgba(255,255,255,0) 820px);
|
||||
/* Getönte Fläche statt Weiß, und eine kurze Kante statt eines langen Schleiers:
|
||||
vorher lag bis 820px ein halbtransparenter Weißverlauf über dem Foto und nahm ihm
|
||||
die Farbe. Jetzt deckt die Fläche die Textspalte, das Foto steht voll gesättigt. */
|
||||
background:linear-gradient(98deg,var(--sky-100) 0,var(--sky-100) var(--scrim-edge),rgba(207,230,248,0) calc(var(--scrim-edge) + 90px));
|
||||
}
|
||||
.hero--verein .hero__scrim{
|
||||
background:linear-gradient(100deg,var(--sun-100) 0,var(--sun-100) 430px,rgba(253,244,220,.92) 560px,rgba(253,244,220,0) 820px);
|
||||
background:linear-gradient(100deg,var(--sun-200) 0,var(--sun-200) var(--scrim-edge),rgba(251,227,160,0) calc(var(--scrim-edge) + 90px));
|
||||
}
|
||||
}
|
||||
@media (max-width:819.98px){
|
||||
.hero__media{position:relative; inset:auto; height:clamp(200px,44vw,320px)}
|
||||
.hero__scrim{display:none}
|
||||
.hero__in{padding-block:var(--space-10)}
|
||||
.hero--shop{background:var(--surface-page)}
|
||||
.hero--verein{background:var(--sun-100)}
|
||||
.hero--shop{background:var(--sky-100)}
|
||||
.hero--verein{background:var(--sun-200)}
|
||||
}
|
||||
.hero--verein{border-bottom:6px solid var(--sun-400)}
|
||||
/* Seit im Hero ein echtes Foto liegt, braucht das Zeichen einen eigenen Grund —
|
||||
@@ -331,10 +354,9 @@ a:hover{color:var(--sky-600)}
|
||||
.sh{display:flex; align-items:center; gap:14px; margin-bottom:var(--space-6)}
|
||||
.sh__chip{
|
||||
width:44px; height:44px; flex:none; border-radius:var(--radius-m);
|
||||
display:grid; place-items:center; background:var(--accent-soft); color:var(--accent-text);
|
||||
display:grid; place-items:center; background:var(--accent); color:#fff; /* Icon: Grafik-Schwelle 3.0 */
|
||||
transform:rotate(-3deg);
|
||||
}
|
||||
.field--cool .sh__chip, .field--warm .sh__chip, .field--rose .sh__chip{background:var(--surface-card)}
|
||||
.sh svg{width:22px; height:22px; flex:none}
|
||||
.cols{display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:var(--gutter-grid); align-items:start}
|
||||
.cols p{max-width:52ch}
|
||||
@@ -363,9 +385,13 @@ a:hover{color:var(--sky-600)}
|
||||
padding:var(--space-6); display:grid; gap:var(--space-3); align-content:start;
|
||||
transition:transform var(--dur-lift) var(--ease), box-shadow var(--dur-lift) var(--ease);
|
||||
}
|
||||
.tile--cool{background:var(--sky-50); border-color:#D6E8F7; border-top-color:var(--sky-400)}
|
||||
.tile--warm{background:var(--sun-100); border-color:#F2E5C4; border-top-color:var(--sun-400)}
|
||||
.tile--rose{background:var(--coral-50); border-color:#F8DED8; border-top-color:var(--coral-400)}
|
||||
/* Getönte Kacheln tragen auch auf dem gelben Vollband ihre Farbe (Spezifität 0,2,0,
|
||||
damit sie das Weiß von .field--solid-* .tile schlagen). Fließtext darin ink-700:
|
||||
Guardrail "keine graue Schrift auf farbigem Grund". */
|
||||
.tile.tile--cool{background:var(--sky-100); border-color:var(--sky-100); border-top-color:var(--sky-500)}
|
||||
.tile.tile--warm{background:var(--sun-200); border-color:var(--sun-200); border-top-color:var(--sun-600)}
|
||||
.tile.tile--rose{background:var(--coral-100); border-color:var(--coral-100); border-top-color:var(--coral-500)}
|
||||
.tile[class*="tile--"] p{color:var(--ink-700)}
|
||||
/* Auf getoentem Feld kehren sich die Kacheln um: weiss auf Farbe statt Farbe auf Weiss. */
|
||||
.field--cool .tile, .field--warm .tile, .field--rose .tile{background:var(--surface-card)}
|
||||
.tile:hover{transform:translateY(-3px); box-shadow:var(--shadow-card-hover)}
|
||||
@@ -377,14 +403,13 @@ a:hover{color:var(--sky-600)}
|
||||
Auf 400px verkleinert und auf ein Cremefeld gesetzt, damit die Luecke wie ein
|
||||
vorbereiteter Rahmen liest und nicht wie ein Loch. */
|
||||
.portrait{max-width:400px; margin-inline:auto; display:grid; gap:var(--space-5); justify-items:center; text-align:center}
|
||||
.portrait__slot{
|
||||
width:100%; aspect-ratio:1/1; border-radius:var(--radius-xl);
|
||||
background:var(--surface-card); border:2px dashed var(--sun-400);
|
||||
display:grid; place-items:center; padding:var(--space-6);
|
||||
/* Gleiche Behandlung wie .story__img — gekippt, weiß gerahmt, wie ein aufgelegtes Foto. */
|
||||
.portrait__img{
|
||||
width:100%; height:auto; aspect-ratio:4/5; object-fit:cover;
|
||||
border-radius:var(--radius-xl); border:6px solid var(--surface-card);
|
||||
box-shadow:var(--shadow-band); transform:rotate(1.5deg);
|
||||
}
|
||||
.portrait__slot span{font:var(--t-small); color:var(--ink-700); max-width:22ch}
|
||||
.portrait__slot img{width:100%; height:100%; object-fit:cover; border-radius:var(--radius-xl)}
|
||||
.portrait__name{font:var(--t-h2); color:var(--accent); letter-spacing:var(--ls-display)}
|
||||
.portrait__name{font:var(--t-h2); color:var(--accent-text); letter-spacing:var(--ls-display)} /* 4.43 auf sun-200 */
|
||||
|
||||
/* Audio */
|
||||
.song{
|
||||
@@ -422,7 +447,7 @@ a:hover{color:var(--sky-600)}
|
||||
.band__copy{display:grid; gap:var(--space-4); justify-items:start}
|
||||
/* Guardrail: kein Grau auf farbigem Grund. Ink-700 = 13.20 auf Creme. */
|
||||
.band__copy p{color:var(--ink-700); max-width:46ch}
|
||||
.band__copy h2{color:var(--accent)}
|
||||
.band__copy h2{color:var(--accent-text)} /* 4.43 bzw. 4.04 auf den kräftigeren Bändern */
|
||||
.band__copy .label{color:var(--ink-700)}
|
||||
.band img{width:100%; max-width:380px; justify-self:center}
|
||||
|
||||
@@ -434,7 +459,7 @@ a:hover{color:var(--sky-600)}
|
||||
border-radius:var(--radius-l); box-shadow:var(--shadow-card);
|
||||
padding:var(--space-6); display:grid; gap:var(--space-2);
|
||||
}
|
||||
.contact p{font:600 17px/1.5 'Nunito','Segoe UI',sans-serif; color:var(--ink-700); word-break:break-word}
|
||||
.contact p{font:600 17px/1.5 'Nunito','Segoe UI',sans-serif; color:var(--ink-700); overflow-wrap:break-word} /* bricht am <wbr> nach dem @ */
|
||||
/* Telefon und E-Mail sind die wichtigsten Links der Seite und waren 23px hoch —
|
||||
einen Pixel unter WCAG 2.5.8. Als volles 44px-Ziel laesst sich die Nummer am
|
||||
Handy zuverlaessig antippen. */
|
||||
|
||||
Reference in new issue
Block a user