/* Bewegung.
 *
 * Sparsam und begruendet: ein Reveal beim Scrollen fuer laengere Listen,
 * damit die Speisekarte nicht als Wand erscheint, und der Auftakt des
 * Heros. Mehr nicht. Kein GSAP, das waeren 70 KB fuer eine Handvoll
 * Uebergaenge, die modernes CSS deklarativ kann.
 *
 * Falle, die hier schon Zeit gekostet hat: overflow:hidden macht ein
 * Element zum Scroll-Container und friert damit jede view()-Zeitachse
 * darin ein. Im Theme deshalb ueberall overflow:clip.
 */

@media (prefers-reduced-motion: no-preference) {

	:root {
		--zeitachse-sicht: view();
	}

	.reveal {
		animation: dd-auftauchen linear both;
		animation-timeline: var(--zeitachse-sicht);
		/* Bewusst "entry 0% entry 100%": der Fortschritt haengt damit nur
		 * daran, wie weit das Element eingetreten ist. Sobald es
		 * vollstaendig im Bild steht, ist die Deckkraft 1, unabhaengig
		 * von der Fensterhoehe.
		 *
		 * Mit einem cover-Ende (etwa "cover 26%") ist das nicht so: auf
		 * einem sehr hohen Fenster bleiben Bloecke, die zwar sichtbar
		 * sind, aber den cover-Bereich noch nicht weit genug durchlaufen
		 * haben, dauerhaft halbtransparent. Das sieht dann nicht nach
		 * kaputter Animation aus, sondern nach zu blassem Text, und wird
		 * genau deshalb uebersehen. */
		animation-range: entry 0% entry 100%;
	}

	@keyframes dd-auftauchen {
		from {
			opacity: 0;
			transform: translateY(14px);
		}
		to {
			opacity: 1;
			transform: none;
		}
	}

}

/* Bewusst KEINE Einblend-Animation auf dem Auftakt.
 *
 * Der Hero-Titel ist der LCP-Kandidat. Wer ihn ueber opacity einblendet,
 * verschiebt genau die Messung, die Google fuer "wie schnell ist die Seite"
 * heranzieht, um die volle Dauer der Animation nach hinten. Bei einer
 * Restaurantseite, die viele Gaeste unterwegs im Mobilfunk aufrufen, ist
 * das der falsche Handel: ein paar Zehntel gefuehlte Eleganz gegen einen
 * messbar schlechteren Ladewert.
 *
 * Nachgestellt am 14.08.2026: im Screenshot bei 1440 Pixel fehlten die
 * beiden Knoepfe komplett und der Titel stand halbtransparent, weil die
 * Aufnahme mitten in der Animation lag. Was ein Werkzeug so erwischt,
 * erwischt auch ein langsames Geraet.
 */
