Plain node activation no longer navigates, case cards stay quiet evidence rows, and the terminal keeps one top-to-bottom scrollport. Co-authored-by: Cursor <cursoragent@cursor.com>
70 lines
2.3 KiB
HTML
70 lines
2.3 KiB
HTML
<article class="case-study stack" [id]="caseStudy().id" [attr.aria-labelledby]="headingId()">
|
|
<header class="stack">
|
|
<h2 [id]="headingId()">{{ caseStudy().headline }}</h2>
|
|
<p class="meta">
|
|
{{ caseStudy().client }} · {{ caseStudy().role }} · {{ caseStudy().period }} ·
|
|
{{ caseStudy().domain }}
|
|
</p>
|
|
<p>{{ caseStudy().summary }}</p>
|
|
<p>{{ caseStudy().responsibility }}</p>
|
|
@if (caseStudy().transparencyNote; as note) {
|
|
<p class="transparency" role="note">{{ note }}</p>
|
|
}
|
|
@if (caseStudy().externalUrl; as url) {
|
|
<p>
|
|
<a class="external-link" [href]="url" rel="noopener noreferrer" target="_blank">
|
|
{{ caseStudy().externalLabel }}
|
|
</a>
|
|
</p>
|
|
}
|
|
</header>
|
|
|
|
<section class="stack" [attr.aria-labelledby]="caseStudy().id + '-situation'">
|
|
<h3 [id]="caseStudy().id + '-situation'">{{ situationLabel() }}</h3>
|
|
<p>{{ caseStudy().situation }}</p>
|
|
</section>
|
|
|
|
<section class="stack" [attr.aria-labelledby]="caseStudy().id + '-approach'">
|
|
<h3 [id]="caseStudy().id + '-approach'">{{ approachLabel() }}</h3>
|
|
<ol>
|
|
@for (item of caseStudy().approach; track $index) {
|
|
<li>{{ item }}</li>
|
|
}
|
|
</ol>
|
|
</section>
|
|
|
|
<section class="stack" [attr.aria-labelledby]="caseStudy().id + '-outcome'">
|
|
<h3 [id]="caseStudy().id + '-outcome'">{{ outcomeLabel() }}</h3>
|
|
<ul>
|
|
@for (item of caseStudy().outcome; track $index) {
|
|
<li>{{ item }}</li>
|
|
}
|
|
</ul>
|
|
</section>
|
|
|
|
@if (caseStudy().metrics.length > 0) {
|
|
<section class="stack" [attr.aria-labelledby]="metricsLabelId()">
|
|
<h3 [id]="metricsLabelId()">{{ metricsLabel() }}</h3>
|
|
<app-metric-list [metrics]="caseStudy().metrics" [labelledBy]="metricsLabelId()" />
|
|
</section>
|
|
}
|
|
|
|
<section class="stack" [attr.aria-labelledby]="caseStudy().id + '-stack'">
|
|
<h3 [id]="caseStudy().id + '-stack'">{{ stackLabel() }}</h3>
|
|
<ul class="cluster tags">
|
|
@for (item of caseStudy().stack; track $index) {
|
|
<li>{{ item }}</li>
|
|
}
|
|
</ul>
|
|
</section>
|
|
|
|
<section class="stack" [attr.aria-labelledby]="caseStudy().id + '-tags'">
|
|
<h3 [id]="caseStudy().id + '-tags'">{{ tagsLabel() }}</h3>
|
|
<ul class="cluster tags">
|
|
@for (tag of caseStudy().tags; track $index) {
|
|
<li>{{ tag }}</li>
|
|
}
|
|
</ul>
|
|
</section>
|
|
</article>
|