/* Öffentliche Seite.

   Ruhig gehalten und mit viel Luft: Die Seite soll nach einem Angebot
   aussehen, das man ernst nimmt, nicht nach einem Spielplakat. Die
   Textspalte ist bewusst schmal - lange Zeilen liest niemand zu Ende. */

.schau { max-width: 940px; margin: 0 auto; padding: 2rem 1.2rem 4rem; }

.held { text-align: center; padding: 2.5rem 0 2rem; }
.held .marke { width: min(320px, 74vw); }
.anriss {
	max-width: 30rem; margin: 1.6rem auto .6rem;
	font-size: 20px; line-height: 1.6;
}
.klein { color: var(--creme-matt); font-size: 13px; }

/* Das Zitat trägt die ganze Seite - es steht für das Ergebnis, nicht für
   die Technik dahinter. Deshalb bekommt es eine eigene Fläche. */
.zitat {
	text-align: center; margin: 1rem 0 2.5rem;
	padding: 2rem 1.2rem; border-top: 1px solid var(--rand);
	border-bottom: 1px solid var(--rand);
}
.zitat p {
	margin: 0 auto; max-width: 26rem;
	font-size: clamp(20px, 3.4vw, 27px); line-height: 1.4;
}
.zitat span {
	display: block; margin-top: .9rem;
	color: var(--creme-matt); font: 12px var(--mono);
}

.raster {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
	gap: 1.2rem; margin-bottom: 1.5rem;
}
.raster article {
	background: var(--oliv); border: 1px solid var(--rand);
	border-radius: 4px; padding: 1.3rem 1.4rem;
}
.raster p:last-child { margin-bottom: 0; }

h2 {
	margin: 0 0 .7rem; font-size: 13px; letter-spacing: .16em;
	text-transform: uppercase; color: var(--creme-matt);
}

.reihe {
	background: var(--oliv); border: 1px solid var(--rand);
	border-radius: 4px; padding: 1.3rem 1.4rem; margin-bottom: 1.5rem;
}
.reihe.schmal p { max-width: 42rem; margin-bottom: 0; }
.reihe ul { margin: 0; padding-left: 1.1rem; }
.reihe li { margin: .45rem 0; }

.band {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 1px; background: var(--rand); border: 1px solid var(--rand);
	border-radius: 4px; overflow: hidden; margin-bottom: 1.5rem;
}
.band div { background: var(--oliv); padding: 1.2rem .8rem; text-align: center; }
.band b { display: block; font: 700 24px var(--mono); }
.band small { color: var(--creme-matt); font-size: 12px; }

.anfrage {
	text-align: center; background: var(--oliv-hell);
	border: 1px solid var(--rand); border-radius: 4px;
	padding: 2rem 1.4rem; margin-bottom: 2rem;
}
.anfrage p { max-width: 28rem; margin: 0 auto; }
.anfrage .kontakt {
	margin-top: 1.1rem; font: 600 18px var(--schrift); color: var(--creme);
}

footer {
	margin-top: 2rem; padding-top: 1.5rem;
	border-top: 1px solid var(--rand); text-align: center;
}

/* Hörprobe.

   Der eingebaute Browser-Abspieler sieht überall anders aus und nirgends nach
   dieser Seite. Deshalb ein eigener: ein großer Knopf, eine Schiene, zwei
   Zeiten. Mehr braucht niemand, der vier Minuten reinhören will. */
.hoerprobe {
	border: 1px solid var(--rand); border-radius: 4px;
	background: var(--oliv); padding: 1.6rem 1.5rem;
	margin: 0 0 2.5rem;
}
.hoerprobe h2 { margin: 0 0 .4rem; font-size: 19px; }
.hoerprobe > p { margin: 0 0 1.3rem; color: var(--creme-matt); font-size: 15px; }

.spieler { display: flex; align-items: center; gap: 1.1rem; }

.spieler .knopf {
	flex: 0 0 auto; width: 58px; height: 58px; border-radius: 50%;
	border: 2px solid var(--creme); background: transparent; color: var(--creme);
	cursor: pointer; display: grid; place-items: center; padding: 0;
	transition: background .15s, color .15s;
}
.spieler .knopf:hover { background: var(--creme); color: var(--oliv); }
.spieler .knopf svg { width: 20px; height: 20px; fill: currentColor; }
.spieler .knopf .pause { display: none; }
.spieler .knopf.laeuft .play { display: none; }
.spieler .knopf.laeuft .pause { display: block; }

.spieler .mitte { flex: 1 1 auto; min-width: 0; }
.spieler .titel {
	font: 12px var(--mono); letter-spacing: .08em; text-transform: uppercase;
	color: var(--creme-matt); margin-bottom: .6rem;
}
.spieler .schiene {
	height: 10px; background: var(--oliv-tief); border: 1px solid var(--rand);
	border-radius: 2px; cursor: pointer; overflow: hidden;
}
.spieler .fuellung { height: 100%; width: 0; background: var(--gelb); }
.spieler .zeiten {
	display: flex; justify-content: space-between;
	font: 12px var(--mono); color: var(--creme-matt); margin-top: .45rem;
}

@media (max-width: 480px) {
	.spieler { gap: .8rem; }
	.spieler .knopf { width: 50px; height: 50px; }
}

/* Der Name steht auf einer eigenen Zeile, der Träger darunter. Mit Gedankenstrich
   in einer Zeile las es sich wie eine Fußnote; getrennt wirkt es wie ein
   Absender. */
footer .traeger { line-height: 1.7; }
footer .traeger b { font-size: 17px; letter-spacing: .04em; }

