Anelias Feedback: Slogan auf der Naht, ihre Headline, HR auf der Trainings-Seite
Slogan: „Personality · Impact · Success“ steht nicht mehr im Hero unter dem Monogramm, sondern als dunkle Plakette mit Goldrand mittig auf der Naht zwischen Cover und Abschnitt 01 – auf beiden Sprachfassungen englisch (lang="en"). Neue optionale `lead`-Stelle in <Section/>; Inhalt unter `positioning.slogan`. Das Monogramm hat ab lg wieder seine alte Größe, das Cover ist 2.5 rem kürzer als der Viewport, damit die Plakette schon auf dem ersten Bildschirm ganz zu sehen ist. Unter lg hält `pb-10` den Kennenlern-Knopf frei von der halben Plakette. Headline: Anelias Wortlaut „Mit starker Persönlichkeit und souveräner Wirkung zum Erfolg!“ – drei Betonungen, Gold-Verlauf nur auf „Erfolg“. Englisch: „Strong personality, assured impact – your way to success!“. AGENTS.md und globals.css beschreiben die Trias-Ausnahme jetzt mit dem Slogan auf der Naht. Trainings: viertes Modul „HR-Teambuilding & Konfliktlösung“ aus ihrer Nachricht (Dauer offen, Text braucht ihre Freigabe – CONTENT_TODO), vierte Bremse, Subline und Meta-Beschreibung mit HR; „Konflikte“ wandert aus dem Leadership- Modul ins HR-Modul. Messeseite (Themenzeile 02) und „Für wen“ auf der Startseite ziehen mit. Die englische Modultabelle zeigt jetzt englische Spaltenköpfe (`modules.labels`, „Audience“ passt einzeilig) statt „Modul | Ziel | Für wen“. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f825e74222
commit
6fdd7df1f8
15 files changed
+193
-116
No files matched your search
@@ -8,6 +8,8 @@ export type { ModuleItem };
|
||||
|
||||
export interface ModuleTableProps {
|
||||
modules: readonly ModuleItem[];
|
||||
/** Spalten- und Zellbeschriftungen in der Sprache der Seite. Ohne Angabe deutsch. */
|
||||
labels?: { module: string; goal: string; contents: string; audience: string; meta: string };
|
||||
className?: string;
|
||||
}
|
||||
|
||||
@@ -21,14 +23,14 @@ const HEAD = cn(MONO, "uppercase tracking-[0.12em] text-accent");
|
||||
* (Bodoni 30 px title, Jost goal + audience, mono meta). Opens to the
|
||||
* hairline-separated „Inhalte“ list; „+“ rotates to „ד via CSS.
|
||||
*/
|
||||
export function ModuleTable({ modules, className }: ModuleTableProps) {
|
||||
export function ModuleTable({ modules, labels = moduleLabels, className }: ModuleTableProps) {
|
||||
const cols = "grid grid-cols-[1fr_auto] gap-x-6 gap-y-3 lg:grid-cols-[minmax(0,3.5fr)_minmax(0,3fr)_minmax(0,2fr)_minmax(0,2.2fr)_2rem] lg:gap-x-8";
|
||||
return (
|
||||
<div className={cn("w-full", className)}>
|
||||
<div className={cn(cols, "hidden border-b border-line pb-3 lg:grid")} aria-hidden="true">
|
||||
<span className={HEAD}>{moduleLabels.module}</span>
|
||||
<span className={HEAD}>{moduleLabels.goal}</span>
|
||||
<span className={HEAD}>{moduleLabels.audience}</span>
|
||||
<span className={HEAD}>{labels.module}</span>
|
||||
<span className={HEAD}>{labels.goal}</span>
|
||||
<span className={HEAD}>{labels.audience}</span>
|
||||
<span />
|
||||
<span />
|
||||
</div>
|
||||
@@ -47,21 +49,21 @@ export function ModuleTable({ modules, className }: ModuleTableProps) {
|
||||
would be announced as unlabelled text. The label stays in the DOM at every
|
||||
width and is only visually suppressed where the header row takes over. */}
|
||||
<span className="col-span-2 font-sans text-[1.0625rem] leading-snug text-fg lg:col-span-1">
|
||||
<span className={cn(HEAD, "mr-3 lg:sr-only")}>{moduleLabels.goal}</span>
|
||||
<span className={cn(HEAD, "mr-3 lg:sr-only")}>{labels.goal}</span>
|
||||
{m.goal}
|
||||
</span>
|
||||
<span className="col-span-2 font-sans text-[1.0625rem] leading-snug text-fg lg:col-span-1">
|
||||
<span className={cn(HEAD, "mr-3 lg:sr-only")}>{moduleLabels.audience}</span>
|
||||
<span className={cn(HEAD, "mr-3 lg:sr-only")}>{labels.audience}</span>
|
||||
{m.audience}
|
||||
</span>
|
||||
<span className={cn(MONO, "col-span-2 tabular-nums text-fg-muted lg:col-span-1 lg:text-right")}>
|
||||
{/* The meta column has no visible header at any width. */}
|
||||
<span className="sr-only">{moduleLabels.meta}</span>
|
||||
<span className="sr-only">{labels.meta}</span>
|
||||
<MetaLines text={m.meta} />
|
||||
</span>
|
||||
</summary>
|
||||
<div className="pb-8 lg:grid lg:grid-cols-[minmax(0,3fr)_minmax(0,7fr)_2rem] lg:gap-x-8">
|
||||
<span className={cn(HEAD, "mb-3 block lg:mb-0")}>{moduleLabels.contents}</span>
|
||||
<span className={cn(HEAD, "mb-3 block lg:mb-0")}>{labels.contents}</span>
|
||||
<ul className="border-t border-line">
|
||||
{m.contents.map((line) => (
|
||||
<li key={line} className="border-b border-line py-3 font-sans text-[1.0625rem] leading-snug text-fg">
|
||||
|
||||
Reference in new issue
Block a user