/* Cards: Projekt (Hoch/Quer/Quadrat), Stein, Story – Figma 05 · Cards */

.fuz-raster { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--fuz-space-8) var(--fuz-gutter); grid-template-columns: 1fr; }
@media (min-width: 600px) { .fuz-raster { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px) { .fuz-raster { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Projekt-Card: Bildformate dezent abgestuft (Hoch 5:6 · Quadrat 1:1 · Quer 5:4).
   Im Raster liegen Meta und Titel per Subgrid in jeder Reihe auf gleicher Höhe. */
.fuz-project-card { display: flex; flex-direction: column; height: 100%; }
.fuz-project-card__media { position: relative; overflow: hidden; border-radius: var(--fuz-radius-m); background: var(--fuz-placeholder); aspect-ratio: 5 / 4; }
@media (min-width: 900px) {
	.fuz-project-card--hoch .fuz-project-card__media { aspect-ratio: 5 / 6; }
	.fuz-project-card--quadrat .fuz-project-card__media { aspect-ratio: 1; }
	.fuz-project-card--quer .fuz-project-card__media { aspect-ratio: 5 / 4; }
}
@supports (grid-template-rows: subgrid) {
	@media (min-width: 600px) {
		.fuz-raster--projects { row-gap: 0; }
		.fuz-raster--projects > li { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; }
		.fuz-raster--projects .fuz-project-card { display: grid; grid-row: 1 / -1; grid-template-rows: subgrid; row-gap: 0; height: auto; }
		.fuz-raster--projects .fuz-project-card__media { align-self: start; }
		.fuz-raster--projects .fuz-project-card__title { padding-bottom: var(--fuz-space-8); }
	}
}
.fuz-project-card__media img { transition: transform .6s var(--fuz-ease); }
.fuz-project-card__meta { display: flex; gap: var(--fuz-space-4); align-items: baseline; margin-top: var(--fuz-space-5); padding-top: var(--fuz-space-4); font-size: var(--fuz-fs-label); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; line-height: 1.2; }
.fuz-project-card__counter { color: var(--fuz-text-muted); }
.fuz-project-card__eyebrow { color: var(--fuz-text-secondary); }
.fuz-project-card__title, .fuz-stone-card__title { margin-top: var(--fuz-space-4); font-size: var(--fuz-fs-titel-s); line-height: 1.25; font-weight: 700; text-wrap: balance; }

/* Pfeil-Button + Abdunklung beim Hover (Figma: Zustand=Hover) */
.fuz-card-arrow { position: absolute; right: var(--fuz-space-5); bottom: var(--fuz-space-5); z-index: 1; display: grid; place-items: center; width: 64px; height: 64px; border-radius: var(--fuz-radius-rund); background: var(--fuz-c-porphyr-500); color: var(--fuz-c-weiss); opacity: 0; transform: translateY(8px); transition: opacity var(--fuz-dur) var(--fuz-ease), transform var(--fuz-dur) var(--fuz-ease); }
.fuz-card-arrow .fuz-icon { width: 24px; height: 24px; }
.fuz-project-card__media::after, .fuz-stone-card__media::after { content: ""; position: absolute; inset: 0; background: rgb(0 0 0 / .25); opacity: 0; transition: opacity var(--fuz-dur) var(--fuz-ease); }
@media (hover: hover) {
	.fuz-project-card:hover .fuz-card-arrow, .fuz-stone-card:hover .fuz-card-arrow { opacity: 1; transform: none; }
	.fuz-project-card:hover .fuz-project-card__media::after, .fuz-stone-card:hover .fuz-stone-card__media::after { opacity: 1; }
	.fuz-project-card:hover img, .fuz-stone-card:hover img { transform: scale(1.03); }
}
.fuz-project-card:focus-within .fuz-card-arrow, .fuz-stone-card:focus-within .fuz-card-arrow { opacity: 1; transform: none; }

/* Stein-Card */
.fuz-stone-card { display: flex; flex-direction: column; }
.fuz-stone-card__media { position: relative; overflow: hidden; border-radius: var(--fuz-radius-m); background: var(--fuz-placeholder); aspect-ratio: 1; margin-bottom: var(--fuz-space-4); }
.fuz-stone-card__media img { transition: transform .6s var(--fuz-ease); }
.fuz-stone-card__type { font-size: var(--fuz-fs-label); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; line-height: 1.2; color: var(--fuz-text-secondary); }
.fuz-stone-card__title { margin-top: var(--fuz-space-3); }
.fuz-stone-card__origin { margin-top: var(--fuz-space-3); font-size: var(--fuz-fs-caption); font-weight: 500; color: var(--fuz-text-muted); }

.fuz-badge { display: inline-block; padding: 8px 12px; border-radius: var(--fuz-radius-s); background: var(--fuz-c-weiss); color: var(--fuz-c-basalt-950); font-size: var(--fuz-fs-label); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; line-height: 1.2; }
.fuz-badge--dark { background: var(--fuz-c-basalt-950); color: var(--fuz-c-weiss); }
.fuz-stone-card__media .fuz-badge { position: absolute; top: var(--fuz-space-4); left: var(--fuz-space-4); z-index: 1; }

/* Story-Card */
.fuz-story-card { display: flex; flex-direction: column; gap: var(--fuz-space-4); }
.fuz-story-card__media { overflow: hidden; border-radius: var(--fuz-radius-m); background: var(--fuz-placeholder); aspect-ratio: 8 / 5; }
.fuz-story-card__media img { transition: transform .6s var(--fuz-ease); }
@media (hover: hover) { .fuz-story-card:hover img { transform: scale(1.03); } }
.fuz-story-card__meta { display: flex; flex-wrap: wrap; gap: var(--fuz-space-3); margin-top: var(--fuz-space-2); font-size: var(--fuz-fs-label); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; line-height: 1.2; color: var(--fuz-text-muted); }
.fuz-story-card__cat { color: var(--fuz-accent); }
.fuz-story-card__title { font-size: var(--fuz-fs-titel-m); line-height: 1.2; font-weight: 700; text-wrap: balance; }
.fuz-story-card__teaser { color: var(--fuz-text-secondary); }

/* Section-Kopf */
.fuz-section-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--fuz-space-5) var(--fuz-gutter); margin-bottom: var(--fuz-space-8); }
.fuz-section-head__text { display: grid; gap: var(--fuz-space-5); flex: 1 1 520px; min-width: 0; max-width: 1125px; }
.fuz-section-head__label { color: var(--fuz-text-secondary); }
.fuz-section-head__lead { max-width: 760px; color: var(--fuz-text-secondary); }
.fuz-section-head--zentriert { justify-content: center; text-align: center; }
.fuz-section-head--zentriert .fuz-section-head__text { justify-items: center; }
.fuz-titel-l, .fuz-section-head__title { text-transform: uppercase; hyphens: manual; overflow-wrap: anywhere; }

/* Story groß (Stone Stories: neueste Story) */
.fuz-story-card__body { display: grid; gap: var(--fuz-space-4); justify-items: start; }
.fuz-story-featured { margin-bottom: var(--fuz-space-9); }
@media (min-width: 900px) {
	.fuz-story-card--featured { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--fuz-space-8); align-items: center; }
	.fuz-story-card--featured .fuz-story-card__media { aspect-ratio: 4 / 3; }
}
.fuz-story-card--featured .fuz-story-card__title { font-size: var(--fuz-fs-titel-l); text-transform: uppercase; line-height: 1.05; }
.fuz-story-card--featured .fuz-button { position: relative; z-index: 1; pointer-events: none; }
[data-fuz-theme="kalk"] .fuz-story-card__cat { color: var(--fuz-c-porphyr-700); }
