/* ==========================================================================
   Singkreis Raaba – Block-Theme
   Farben, Schriften und Abstände kommen aus theme.json.
   Hier: Blockstile, Abschnitte, Termine, Kopf- und Fußzeile.
   ========================================================================== */

:root {
	--skr-staff: rgba(43, 46, 49, 0.13);
	--skr-section: clamp(3.5rem, 2.5rem + 4vw, 6.5rem);
	--skr-section-tight: clamp(1.5rem, 1rem + 2vw, 2.5rem);
	--skr-radius: 3px;
}

html { scroll-behavior: smooth; }
img { height: auto; }
:where(a):focus-visible,
:where(button):focus-visible {
	outline: 2px solid var(--wp--preset--color--carmine);
	outline-offset: 3px;
}
h1, h2, h3, h4 { text-wrap: balance; }
mark.has-inline-color { background-color: transparent; }
mark:not(.has-inline-color) { background: #fff3c4; color: #5c4500; padding: 0 0.2em; border-radius: 2px; }

/* Abschnitte direkt aneinander, Abstand regelt der Abschnitt selbst */
.wp-block-post-content > .alignfull,
.wp-block-post-content > .alignfull + * { margin-block-start: 0; }
.wp-block-post-content > :first-child { margin-block-start: 0; }

.skr-abschnitt { padding-block: 0 var(--skr-section); }
.skr-abschnitt.has-background,
.skr-mitsingen { padding-block: var(--skr-section); }
.skr-abschnitt.has-background + .skr-abschnitt:not(.has-background) { padding-top: var(--skr-section); }
.skr-abschnitt-eng { padding-bottom: var(--skr-section-tight); }
.skr-abschnitt > .alignwide + .alignwide { margin-block-start: clamp(1.75rem, 3vw, 2.5rem); }

/* ------------------------------------------------------------------------
   Blockstile
   ------------------------------------------------------------------------ */

.is-style-ueberzeile {
	font-family: var(--wp--preset--font-family--display);
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--carmine-deep);
	margin-bottom: 0.75rem;
}
* + .is-style-ueberzeile { margin-block-start: 1.5rem; }
.is-style-ueberzeile + * { margin-block-start: 0 !important; }

.is-style-einleitung {
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.5;
	color: var(--wp--preset--color--ink-soft);
	max-width: 36rem;
}

.is-style-textlink a {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	border-bottom: 1.5px solid currentColor;
	padding-bottom: 1px;
	overflow-wrap: anywhere;
}
.is-style-textlink a::after { content: " →"; }

/* Notenlinien: fünf feine Linien pro Textzeile */
.is-style-notenlinien {
	--gap: 0.17em;
	line-height: 1.02 !important;
	padding-block: 0.06em;
	background-image: repeating-linear-gradient(
		to bottom,
		transparent 0,
		transparent calc(var(--gap) - 1px),
		var(--skr-staff) calc(var(--gap) - 1px),
		var(--skr-staff) var(--gap)
	);
	background-size: 100% 1.02em;
	background-position: 0 0.12em;
	background-repeat: repeat-y;
	hyphens: auto;
	overflow-wrap: break-word;
}

/* Liste als Notenzeilen */
ul.is-style-notenzeilen {
	list-style: none;
	margin: 0;
	padding: 1rem 1.25rem;
	display: grid;
	grid-template-rows: repeat(5, 1fr);
	background: var(--wp--preset--color--paper);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--skr-radius);
}
ul.is-style-notenzeilen li {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.05rem;
	letter-spacing: 0.04em;
	white-space: nowrap;
	margin: 0;
}
ul.is-style-notenzeilen li::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--wp--preset--color--ink);
	opacity: 0.35;
}
ul.is-style-notenzeilen li:nth-child(even) { padding-left: 18%; }
ul.is-style-notenzeilen li:last-child { color: var(--wp--preset--color--carmine-deep); }

/* Breite Variante (Repertoire): Linie – Text – Linie */
ul.skr-notenzeilen-breit {
	padding: 0.4rem 0;
	border: 0;
	border-left: 3px solid var(--wp--preset--color--ink);
	border-right: 1px solid var(--wp--preset--color--ink);
	border-radius: 0;
	background: transparent;
	aspect-ratio: auto;
}
ul.skr-notenzeilen-breit li {
	height: clamp(2.6rem, 2rem + 2vw, 3.6rem);
	gap: 0.75rem;
	font-size: var(--wp--preset--font-size--large);
	font-weight: 500;
	padding-left: 0 !important;
}
ul.skr-notenzeilen-breit li::before {
	content: "";
	flex: none;
	height: 1px;
	background: var(--wp--preset--color--ink);
	opacity: 0.35;
}
ul.skr-notenzeilen-breit li:nth-child(1)::before { width: 4%; }
ul.skr-notenzeilen-breit li:nth-child(2)::before { width: 22%; }
ul.skr-notenzeilen-breit li:nth-child(3)::before { width: 40%; }
ul.skr-notenzeilen-breit li:nth-child(4)::before { width: 56%; }
ul.skr-notenzeilen-breit li:nth-child(5)::before { width: 66%; }
@media (max-width: 700px) {
	ul.skr-notenzeilen-breit li::before { width: 3% !important; }
	ul.skr-notenzeilen-breit li:nth-child(even)::before { width: 16% !important; }
	ul.skr-notenzeilen-breit li { white-space: normal; font-size: 1.1rem; }
}

/* Tabellen: Eckdaten */
.wp-block-table.is-style-eckdaten { margin: 0; }
.wp-block-table.is-style-eckdaten table { border-collapse: collapse; width: 100%; }
.wp-block-table.is-style-eckdaten td {
	border: 0;
	border-top: 1px solid var(--wp--preset--color--line);
	padding: 0.95rem 0;
	vertical-align: top;
}
.wp-block-table.is-style-eckdaten tr:last-child td { border-bottom: 1px solid var(--wp--preset--color--line); }
.wp-block-table.is-style-eckdaten td:first-child {
	font-family: var(--wp--preset--font-family--display);
	font-size: 0.875rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
	width: 9rem;
	padding-right: 1rem;
	padding-top: 1.1rem;
}
.skr-werkliste.is-style-eckdaten td:first-child {
	font-family: inherit;
	font-size: inherit;
	letter-spacing: 0;
	text-transform: none;
	color: inherit;
	width: auto;
	padding-top: 0.95rem;
}
.skr-werkliste.is-style-eckdaten td:last-child {
	font-family: var(--wp--preset--font-family--display);
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--ink-soft);
	text-align: right;
}
.has-fir-background-color .is-style-eckdaten td { border-color: rgba(246, 247, 244, 0.25) !important; }
.has-fir-background-color .is-style-eckdaten td:first-child { color: inherit; opacity: 0.8; }
@media (max-width: 600px) {
	.wp-block-table.is-style-eckdaten td { display: block; width: auto !important; }
	.wp-block-table.is-style-eckdaten td:first-child { padding-bottom: 0; border-bottom: 0; }
	.wp-block-table.is-style-eckdaten td + td { border-top: 0; padding-top: 0.2rem; }
	.wp-block-table.is-style-eckdaten tr:last-child td:first-child { border-bottom: 0; }
	.skr-werkliste.is-style-eckdaten td:last-child { text-align: left; }
}

/* Tabellen: Konzertprogramm */
.wp-block-table.is-style-programm { margin: 0; }
.wp-block-table.is-style-programm table { border-collapse: collapse; width: 100%; counter-reset: stueck; }
.wp-block-table.is-style-programm tr { counter-increment: stueck; }
.wp-block-table.is-style-programm td {
	border: 0;
	border-top: 1px solid var(--wp--preset--color--line);
	padding: 0.7rem 0;
	vertical-align: baseline;
}
.wp-block-table.is-style-programm tr:last-child td { border-bottom: 1px solid var(--wp--preset--color--line); }
.wp-block-table.is-style-programm td:first-child { font-weight: 600; }
.wp-block-table.is-style-programm td:first-child::before {
	content: counter(stueck);
	display: inline-block;
	width: 2.2rem;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 400;
	color: var(--wp--preset--color--ink-soft);
	font-variant-numeric: tabular-nums;
}
.wp-block-table.is-style-programm td:last-child {
	font-family: var(--wp--preset--font-family--display);
	letter-spacing: 0.03em;
	color: var(--wp--preset--color--ink-soft);
	text-align: right;
	padding-left: 1rem;
}
.wp-block-table.is-style-programm figcaption { text-align: left; margin-top: 0.9rem; }
@media (max-width: 600px) {
	.wp-block-table.is-style-programm td { display: block; }
	.wp-block-table.is-style-programm td:first-child { padding-bottom: 0.1rem; }
	.wp-block-table.is-style-programm td:last-child { border-top: 0; text-align: left; padding: 0 0 0.7rem 2.2rem; }
}

/* Gruppen und Spalten */
.is-style-linie-oben {
	border-top: 1px solid var(--wp--preset--color--ink);
	padding-top: 1.1rem;
}
.is-style-karte {
	background: var(--wp--preset--color--paper);
	border-top: 3px solid var(--wp--preset--color--carmine);
	padding: clamp(1.25rem, 2.5vw, 1.75rem);
	height: 100%;
}

/* Schaltflächen */
.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--ink);
	border: 1.5px solid var(--wp--preset--color--ink);
	padding: calc(0.85rem - 1.5px) calc(1.4rem - 1.5px);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
}
.wp-block-button.is-style-hell .wp-block-button__link {
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--fir);
	text-transform: none;
	letter-spacing: 0.02em;
	overflow-wrap: anywhere;
}
.wp-block-button.is-style-hell .wp-block-button__link:hover { background: var(--wp--preset--color--white); }

/* Bilder */
.wp-block-image img { border-radius: var(--skr-radius); }
.skr-bild-4-3 img,
ul.skr-bild-4-3 { aspect-ratio: 4 / 3; width: 100%; object-fit: cover; }
.skr-bild-4-5 img { aspect-ratio: 4 / 5; width: 100%; object-fit: cover; object-position: center 25%; }
.skr-bild-breit img { aspect-ratio: 16 / 10.5; width: 100%; object-fit: cover; }
.wp-block-image.is-style-kreis img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }

/* Kleine Elemente */
.skr-chip {
	display: inline-block;
	font-family: var(--wp--preset--font-family--display);
	font-size: 0.875rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--carmine-deep);
	border: 1px solid currentColor;
	border-radius: 99px;
	padding: 0.15rem 0.7rem;
}
.skr-notiz { color: var(--wp--preset--color--ink-soft); }

/* ------------------------------------------------------------------------
   Kopfzeile
   ------------------------------------------------------------------------ */

.skr-kopfbereich {
	position: sticky;
	top: 0;
	z-index: 50;
	background: var(--wp--preset--color--paper);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
/* Kein backdrop-filter: er würde das Vollbild-Menü auf dem Handy auf die Kopfzeile beschränken. */
.admin-bar .skr-kopfbereich { top: var(--wp-admin--admin-bar--height, 32px); }
.skr-kopf-innen { min-height: 4.75rem; }
.skr-kopf .wp-block-site-logo img { width: clamp(130px, 30vw, 168px); height: auto; border-radius: 0; }

.skr-nav .wp-block-navigation-item__content {
	padding-block: 0.4rem;
	border-bottom: 2px solid transparent;
	text-decoration: none;
	transition: border-color 0.2s ease, color 0.2s ease;
}
.skr-nav .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--carmine-deep); }
.skr-nav .current-menu-item > .wp-block-navigation-item__content { border-bottom-color: var(--wp--preset--color--carmine); }
.skr-nav .wp-block-navigation__container { gap: clamp(1.25rem, 3vw, 2.5rem); }
.skr-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--paper);
	padding: 2rem clamp(1rem, 4vw, 2.5rem);
}
.skr-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.skr-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; }
.skr-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 1.25rem; font-size: 1.4rem; }

/* ------------------------------------------------------------------------
   Seitenköpfe
   ------------------------------------------------------------------------ */

.skr-seitenkopf { padding-block: clamp(3rem, 7vw, 5.5rem) clamp(2rem, 4vw, 3rem); }
.skr-seitenkopf h1 { margin-block: 0 1.25rem; }
.skr-fliesstext { padding-bottom: var(--skr-section); }
.skr-fliesstext h2 { font-size: var(--wp--preset--font-size--large); margin-block: 2.25rem 0.6rem; }
.skr-fliesstext h2 + p { margin-block-start: 0; }

/* ------------------------------------------------------------------------
   Startseite
   ------------------------------------------------------------------------ */

.skr-hero { padding-block: clamp(2.5rem, 6vw, 5rem) clamp(2.5rem, 5vw, 4rem); }
.skr-hero-spalten { gap: clamp(2rem, 4vw, 4rem); }
.skr-hero h1 { margin-block: 0 1.5rem; }
.skr-hero .is-style-einleitung { margin-bottom: 2rem; }
@media (max-width: 781px) {
	.skr-hero-spalten > .wp-block-column:last-child { order: -1; }
}

.skr-saeulen { gap: clamp(2rem, 4vw, 3.5rem); }
.skr-saeulen .wp-block-image,
.skr-saeulen ul.skr-bild-4-3 { margin-bottom: 1.5rem; }
.skr-saeulen h3 { margin-block: 0 0.8rem; }

.skr-bildband { margin-block: 0 clamp(2rem, 4vw, 3rem) !important; }
.skr-bildband img {
	border-radius: 0;
	width: 100%;
	aspect-ratio: 1800 / 626;
	min-height: 15rem;
	max-height: 34rem;
	object-fit: cover;
}
.skr-bildband figcaption {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--style--root--padding-left);
	box-sizing: border-box;
}
.skr-zweispaltig { gap: clamp(1.5rem, 4vw, 4rem); }
.skr-zweispaltig h2 { margin-top: 0; }

.skr-mitsingen .is-style-ueberzeile { color: #f2a5c0; }
.skr-mitsingen h2 { margin-block: 0 1.25rem; }
.skr-mitsingen .wp-block-columns { gap: clamp(2rem, 5vw, 5rem); }
.skr-mitsingen .wp-block-buttons { margin-top: 2rem; }

.skr-netzwerk { gap: clamp(1.5rem, 3vw, 3rem); }
.skr-partner { font-size: var(--wp--preset--font-size--large); margin: 0 0 0.5rem; }
.skr-partner a { color: var(--wp--preset--color--ink); text-decoration: none; }
.skr-partner a::after { content: " ↗"; font-size: 0.85em; }
.skr-partner a:hover { color: var(--wp--preset--color--carmine-deep); }
.skr-netzwerk p { color: var(--wp--preset--color--ink-soft); font-size: 1rem; }

/* ------------------------------------------------------------------------
   Chor
   ------------------------------------------------------------------------ */

.skr-stimmen > .wp-block-column.is-style-linie-oben { border-top-width: 3px; }
.skr-stimmen > .wp-block-column:nth-child(n+3) { border-top-color: var(--wp--preset--color--carmine); }
.skr-stimmen h3 { margin: 0; }
.skr-stimmlage { color: var(--wp--preset--color--ink-soft); margin: 0.3rem 0 0.8rem !important; }

.skr-portraet { gap: clamp(2rem, 5vw, 4.5rem); }
.skr-portraet h2 { margin-block: 0 1.25rem; }

.skr-person-klein { gap: 1rem; }
.skr-avatar { flex: none; margin: 0; width: 4.5rem; }
.skr-avatar img { width: 4.5rem; height: 4.5rem; }
.skr-name {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1.25;
	margin: 0;
}
.skr-rolle { color: var(--wp--preset--color--ink-soft); font-size: 1rem; margin: 0.15rem 0 0 !important; }

.skr-team { gap: clamp(1.75rem, 3.5vw, 3rem); }
.skr-team .wp-block-image { margin-bottom: 1.4rem; }
.skr-team h3 { margin-block: 0 0.7rem; }

@media (min-width: 782px) and (max-width: 1050px) {
	.wp-block-columns.skr-stimmen,
	.wp-block-columns.skr-vorstand { flex-wrap: wrap !important; }
	.wp-block-columns.skr-stimmen > .wp-block-column,
	.wp-block-columns.skr-vorstand > .wp-block-column { flex-basis: calc(50% - 1.5rem) !important; flex-grow: 0; }
}

.skr-hinweis h3 { font-size: var(--wp--preset--font-size--x-large); margin: 0 0 0.75rem; }
.skr-hinweis { max-width: 44rem; }

/* ------------------------------------------------------------------------
   Repertoire
   ------------------------------------------------------------------------ */

.skr-werke { gap: clamp(1.25rem, 2.5vw, 2rem); }
.skr-werke h3 { margin: 0 0 0.6rem; }
.skr-untertitel { font-style: italic; color: var(--wp--preset--color--ink-soft); margin: 0 !important; }
.skr-komponist { font-family: var(--wp--preset--font-family--display); letter-spacing: 0.06em; margin-top: 1rem !important; }

/* ------------------------------------------------------------------------
   Termine
   ------------------------------------------------------------------------ */

.skr-datum {
	display: grid;
	justify-items: center;
	font-family: var(--wp--preset--font-family--display);
	line-height: 1;
	min-width: 5.5rem;
	padding-right: clamp(1.25rem, 3vw, 2.75rem);
	border-right: 1px solid var(--wp--preset--color--line);
}
.skr-datum-tag { font-size: 4rem; font-weight: 500; color: var(--wp--preset--color--carmine); }
.skr-datum-monat { font-size: 1.25rem; text-transform: uppercase; letter-spacing: 0.14em; margin-top: 0.3rem; }
.skr-datum-jahr { font-size: 0.95rem; color: var(--wp--preset--color--ink-soft); letter-spacing: 0.1em; margin-top: 0.3rem; }
.skr-datum-gross .skr-datum-tag { font-size: clamp(3.5rem, 2.5rem + 3vw, 5.5rem); }

/* Nächster Termin (Karte) */
.skr-naechster-karte {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: clamp(1.25rem, 3vw, 2.75rem);
	align-items: center;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	background: var(--wp--preset--color--mist);
	border-top: 3px solid var(--wp--preset--color--carmine);
}
.skr-naechster-leer { display: block; }
.skr-naechster-titel { font-size: var(--wp--preset--font-size--x-large); margin: 0 0 0.5rem; }
.skr-naechster-meta { margin: 0; }
.skr-naechster-hinweis { color: var(--wp--preset--color--ink-soft); margin: 0.5rem 0 0; }
.skr-naechster-link { margin: 0; }
@media (max-width: 760px) {
	.skr-naechster-karte { grid-template-columns: auto minmax(0, 1fr); }
	.skr-naechster-link { grid-column: 1 / -1; }
	.skr-naechster-karte .skr-datum { min-width: 4rem; }
	.skr-naechster-karte .skr-datum-tag { font-size: 3rem; }
}

/* Terminliste und Einzeltermin */
.skr-terminliste { display: grid; gap: var(--skr-section); }
.skr-termin-kopf {
	display: flex;
	align-items: center;
	gap: clamp(1.25rem, 3vw, 2.5rem);
	margin-bottom: clamp(1.75rem, 3vw, 2.5rem);
}
.skr-termin-intro { min-width: 0; }
.skr-termin-intro .is-style-ueberzeile { margin-top: 0; }
.skr-termin-titel { font-size: var(--wp--preset--font-size--xx-large); margin: 0; }
.skr-termin-titel a { color: inherit; text-decoration: none; }
.skr-termin-titel a:hover { color: var(--wp--preset--color--carmine-deep); }
.skr-termin-inhalt {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 1.5rem clamp(2rem, 5vw, 4.5rem);
	align-items: start;
}
.skr-termin-inhalt.ohne-programm { grid-template-columns: minmax(0, 1fr); max-width: 40rem; }
.skr-termin-hinweis { color: var(--wp--preset--color--ink-soft); margin-top: 1.5rem; }
.skr-termin-vorbei { color: var(--wp--preset--color--ink-soft); font-style: italic; margin: 0.5rem 0 0; }
.skr-termin-programm > :first-child { margin-top: 0; }
@media (max-width: 800px) {
	.skr-termin-inhalt { grid-template-columns: minmax(0, 1fr); }
}

.skr-eckdaten { margin: 0; }
.skr-eckdaten > div {
	display: grid;
	grid-template-columns: 8.5rem minmax(0, 1fr);
	gap: 1rem;
	padding-block: 0.95rem;
	border-top: 1px solid var(--wp--preset--color--line);
}
.skr-eckdaten > div:last-child { border-bottom: 1px solid var(--wp--preset--color--line); }
.skr-eckdaten dt {
	font-family: var(--wp--preset--font-family--display);
	font-size: 0.875rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
	padding-top: 0.2rem;
}
.skr-eckdaten dd { margin: 0; }
@media (max-width: 600px) {
	.skr-eckdaten > div { grid-template-columns: minmax(0, 1fr); gap: 0.15rem; }
}

.skr-einzeltermin { padding-block: clamp(3rem, 6vw, 5rem) var(--skr-section); }
.skr-termin-einzeln .skr-termin-fakten { max-width: 40rem; }
.skr-termin-einzeln + .skr-termin-programm { margin-top: clamp(2rem, 4vw, 3rem); }
.skr-zurueck { margin-top: 2.5rem; }
.skr-zurueck a { font-family: var(--wp--preset--font-family--display); letter-spacing: 0.04em; text-decoration: none; }
.skr-terminliste-leer { color: var(--wp--preset--color--ink-soft); }

/* ------------------------------------------------------------------------
   Fußzeile
   ------------------------------------------------------------------------ */

.skr-fussbereich { border-top: 1px solid var(--wp--preset--color--line); }
.skr-fuss { padding-top: clamp(2.5rem, 5vw, 4rem); font-size: 1rem; }
.skr-fuss-spalten { gap: clamp(1.75rem, 4vw, 3rem); margin-bottom: clamp(2rem, 4vw, 3rem); }
.skr-fuss-logo { margin: 0; }
.skr-fuss-logo img { width: 8.5rem; border-radius: 0; }
.skr-fuss-titel {
	font-size: 0.875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--carmine-deep);
	margin: 0 0 0.6rem;
}
.skr-fuss a { color: var(--wp--preset--color--ink); overflow-wrap: anywhere; }
.skr-fuss a:hover { color: var(--wp--preset--color--carmine-deep); }
.skr-fuss p { margin: 0; }
ul.skr-fuss-links { list-style: none; padding: 0; margin: 0; }
ul.skr-fuss-links li + li { margin-top: 0.3rem; }
.skr-fuss-recht {
	padding-block: 1.25rem;
	border-top: 1px solid var(--wp--preset--color--line);
	color: var(--wp--preset--color--ink-soft);
	font-size: 0.95rem;
}
.skr-fuss-recht a { color: var(--wp--preset--color--ink-soft); text-decoration: none; }
.skr-fuss-recht a:hover { text-decoration: underline; }
@media (min-width: 782px) and (max-width: 1000px) {
	.wp-block-columns.skr-fuss-spalten { flex-wrap: wrap !important; }
	.wp-block-columns.skr-fuss-spalten > .wp-block-column { flex-basis: calc(50% - 1.5rem) !important; flex-grow: 0; }
}

/* Editor-Hinweis für den Termin-Kopf */
.skr-editor-hinweis {
	padding: 1rem 1.25rem;
	border: 1px dashed var(--wp--preset--color--line);
	color: var(--wp--preset--color--ink-soft);
	font-family: var(--wp--preset--font-family--display);
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	* { transition: none !important; }
}

/* Anmeldung Einladungen zu Konzerten */
.skr-einladungen {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
	gap: clamp(1.5rem, 4vw, 3.5rem);
	padding: clamp(1.5rem, 3vw, 2.5rem);
	background: var(--wp--preset--color--white);
	border-top: 3px solid var(--wp--preset--color--carmine);
	box-shadow: 0 0 0 1px var(--wp--preset--color--line);
	scroll-margin-top: 6rem;
}
.skr-einladungen-text .is-style-ueberzeile { margin-top: 0; }
.skr-einladungen-titel { font-size: var(--wp--preset--font-size--x-large); margin: 0 0 0.75rem; }
.skr-einladungen-text p:last-child { margin-bottom: 0; }
.skr-einladungen-form { display: grid; gap: 1rem; }
.skr-einladungen-form p { margin: 0; }
.skr-einladungen-zeile { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.skr-feld label {
	display: block;
	font-family: var(--wp--preset--font-family--display);
	font-size: 0.85rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 0.3rem;
}
.skr-feld input {
	width: 100%;
	box-sizing: border-box;
	font: inherit;
	padding: 0.65rem 0.8rem;
	border: 1px solid var(--wp--preset--color--line);
	border-bottom: 2px solid var(--wp--preset--color--ink-soft);
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--ink);
	border-radius: 0;
}
.skr-feld input:focus { outline: 2px solid var(--wp--preset--color--carmine); outline-offset: 1px; border-bottom-color: var(--wp--preset--color--carmine); }
.skr-einwilligung { display: flex; gap: 0.7rem; align-items: flex-start; font-size: 0.92rem; line-height: 1.5; color: var(--wp--preset--color--ink-soft); }
.skr-einwilligung input { width: 1.15rem; height: 1.15rem; margin: 0.15rem 0 0; flex: none; accent-color: var(--wp--preset--color--carmine); }
.skr-einladungen-senden .wp-element-button { cursor: pointer; border: 0; }
.skr-einladungen-falle { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.skr-einladungen-meldung { padding: 0.8rem 1rem; border-left: 3px solid; }
.skr-einladungen-meldung.is-ok { border-color: var(--wp--preset--color--fir); background: var(--wp--preset--color--mist); }
.skr-einladungen-meldung.is-fehler { border-color: var(--wp--preset--color--carmine); background: #fbeef2; }
@media (max-width: 781px) {
	.skr-einladungen { grid-template-columns: 1fr; }
	.skr-einladungen-zeile { grid-template-columns: 1fr; }
}
