/*
Theme Name: Flammenmeer
Theme URI: https://flammenmeer.band/
Author: Flammenmeer
Description: Child-Theme von Twenty Twenty-Five für flammenmeer.band. Dunkel, nordisch,
             ohne Seitenbaukasten. Farben, Schriften und Abstände stecken in theme.json.
Template: twentytwentyfive
Version: 0.5.1
Requires at least: 6.7
Tested up to: 7.0
License: GNU General Public License v2 or later
Text Domain: flammenmeer
*/

/* ------------------------------------------------------------------
   Hero mit überblendender Bildfolge
   Vier Bilder, je 6 s sichtbar, 1,5 s Überblendung. Reines CSS,
   kein Plugin und kein JavaScript.
   ------------------------------------------------------------------ */
.fm-hero {
	position: relative;
	overflow: hidden;
	/* volle Fensterhoehe; der Kopfbereich liegt auf der Startseite darueber */
	min-height: 100svh;
	display: flex;
	align-items: center;
}

.fm-hero > .fm-slideshow {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	/* das constrained-Layout des Eltern-Blocks setzt sonst max-width: 760px */
	max-width: none;
	width: auto;
	margin: 0;
}

.fm-slideshow .fm-slide {
	max-width: none;
	position: absolute;
	inset: 0;
	margin: 0;
	opacity: 0;
	animation: fm-blende 24s infinite;
}

.fm-slideshow .fm-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.fm-slideshow .fm-slide:nth-child(1) { animation-delay:  0s; }
.fm-slideshow .fm-slide:nth-child(2) { animation-delay:  6s; }
.fm-slideshow .fm-slide:nth-child(3) { animation-delay: 12s; }
.fm-slideshow .fm-slide:nth-child(4) { animation-delay: 18s; }

@keyframes fm-blende {
	 0%   { opacity: 0; }
	 6%   { opacity: 1; }
	25%   { opacity: 1; }
	31%   { opacity: 0; }
	100%  { opacity: 0; }
}

/* Wer Bewegung reduziert haben will, sieht nur das erste Bild. */
@media (prefers-reduced-motion: reduce) {
	.fm-slideshow .fm-slide {
	max-width: none; animation: none; }
	.fm-slideshow .fm-slide:nth-child(1) { opacity: 1; }
}

/* Abdunklung, damit Schrift und Runenkreis immer stehen */
.fm-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(22,23,24,.55) 0%, rgba(22,23,24,.25) 45%, rgba(22,23,24,.75) 100%);
	pointer-events: none;
}

.fm-hero-inhalt {
	position: relative;
	z-index: 2;
	width: 100%;
}

.fm-hero-inhalt h2,
.fm-hero-inhalt p {
	text-shadow: 0 2px 12px rgba(0,0,0,.6);
}

.fm-runenkreis img {
	filter: drop-shadow(0 0 18px rgba(0,0,0,.55));
}

/* ------------------------------------------------------------------
   Videokacheln: Standbild mit Abspielknopf, YouTube laedt erst beim Klick
   ------------------------------------------------------------------ */
.fm-video {
	position: relative;
	aspect-ratio: 16 / 9;
	background: #101112 center/cover no-repeat;
	border: 1px solid #3a3b3d;
	cursor: pointer;
}

.fm-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.fm-video-play {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 68px;
	height: 68px;
	border: 0;
	border-radius: 50%;
	background: rgba(216,175,48,.92);
	cursor: pointer;
}

.fm-video-play::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 54%;
	transform: translate(-50%, -50%);
	border-style: solid;
	border-width: 13px 0 13px 22px;
	border-color: transparent transparent transparent #161718;
}

.fm-video-play:hover { background: #e9c14a; }

/* ------------------------------------------------------------------
   Goldener Strich unter Abschnittstiteln
   ------------------------------------------------------------------ */
.fm-titel-strich { position: relative; padding-bottom: 1rem; }

.fm-titel-strich::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 84px;
	height: 3px;
	background: var(--wp--preset--color--accent);
}

/* ------------------------------------------------------------------
   Kopfbereich
   Auf der Startseite liegt er durchsichtig ueber dem Hero, damit das
   Hintergrundbild bis ganz nach oben laeuft. Auf allen anderen Seiten
   bleibt er ein normaler dunkler Balken im Fluss.
   ------------------------------------------------------------------ */


body.home .wp-site-blocks > header a,
body.home .wp-site-blocks > header .wp-block-navigation {
	text-shadow: 0 1px 8px rgba(0, 0, 0, .7);
}

/* Der Kopfbereich klebt ganz oben — auf allen Seiten, nicht nur der Startseite */
.wp-site-blocks { padding-top: 0; }



/* ------------------------------------------------------------------
   Buttons
   WordPress laedt zusaetzlich classic-themes.min.css, dort steht die graue
   Pille (#32373c, border-radius 9999px). Die Regel hat dieselbe Spezifitaet
   wie die aus theme.json, kommt aber spaeter — deshalb hier explizit.
   ------------------------------------------------------------------ */
.wp-block-button__link.wp-element-button:not(.is-style-outline) {
	background-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base-dark);
	border-radius: 2px;
}

.wp-block-button__link.wp-element-button:not(.is-style-outline):hover {
	background-color: #e9c14a;
	color: var(--wp--preset--color--base-dark);
}

.is-style-outline .wp-block-button__link.wp-element-button {
	background-color: transparent;
	color: var(--wp--preset--color--accent);
	border: 1px solid var(--wp--preset--color--accent);
	border-radius: 2px;
}

.is-style-outline .wp-block-button__link.wp-element-button:hover {
	background-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base-dark);
}

/* Hero-Texte in der Hausschrift, wie bisher */
.fm-hero-inhalt p { font-family: var(--wp--preset--font-family--norse); letter-spacing: .04em; }

/* Videokacheln oben buendig, auch wenn eine Ueberschrift zweizeilig wird */
@media (min-width: 782px) {
	.fm-videoreihe > .wp-block-column > h3 { margin-bottom: .8rem; }
}

/* Bandmitglieder: quadratische Portraits mit dezentem Rahmen */
.fm-portrait img {
	width: 150px;
	height: 150px;
	object-fit: cover;
	border: 1px solid #3a3b3d;
}

.fm-portrait-leer {
	width: 150px;
	height: 150px;
	margin: 0 auto;
	border: 1px dashed var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent);
	font-family: var(--wp--preset--font-family--norse);
	font-size: 2.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.fm-bandreihe .wp-block-column { text-align: center; }

/* Menue etwas groesser und luftiger als die Vorgabe */
.wp-block-navigation {
	font-size: 1.25rem;
	letter-spacing: .1em;
	font-weight: 400;
}

.wp-block-navigation .wp-block-navigation-item__label { padding-block: .35rem; }

/* schmalere Videokachel fuer einzelne Einbettungen im Textfluss */
.fm-video-schmal { max-width: 480px; }

/* Hochkant-Videokachel (YouTube Shorts) */
.fm-video-hoch { aspect-ratio: 9 / 16; max-width: 340px; }

/* ------------------------------------------------------------------
   Seitenkopf der Unterseiten
   Dieselbe Bildfolge wie auf der Startseite, nur flach. Beginnt direkt
   unter dem Menuestrich, der Seitentitel steht mittig darauf.
   ------------------------------------------------------------------ */
.fm-seitenkopf {
	position: relative;
	overflow: hidden;
	min-height: 190px;
	display: flex;
	align-items: center;
}

.fm-seitenkopf > .fm-slideshow {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	max-width: none;
	width: auto;
	margin: 0;
}

.fm-seitenkopf::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(22,23,24,.62) 0%, rgba(22,23,24,.48) 100%);
	pointer-events: none;
}

.fm-seitenkopf-inhalt {
	position: relative;
	z-index: 2;
	width: 100%;
}

.fm-seitenkopf-inhalt .wp-block-post-title {
	margin: 0;
	text-shadow: 0 2px 14px rgba(0,0,0,.7);
}

/* ------------------------------------------------------------------
   Kopfbereich klebt beim Scrollen
   Oben durchsichtig, sobald gescrollt wird halbtransparent schwarz.
   Die Klasse setzt assets/kopf.js am body.
   ------------------------------------------------------------------ */
.wp-site-blocks > header {
	position: sticky;
	top: 0;
	z-index: 100;
	background-color: transparent;
	transition: background-color .25s ease, backdrop-filter .25s ease;
}

.wp-site-blocks > header::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	opacity: 0;
	background-color: rgba(18, 19, 20, .82);
	backdrop-filter: blur(8px);
	transition: opacity .25s ease;
}

body.fm-gescrollt .wp-site-blocks > header::before { opacity: 1; }

/* der innere Balken bleibt immer durchsichtig, die Farbe macht der aeussere */
.wp-site-blocks > header > header { background-color: transparent; }

/* TT5 setzt ueber den Block-Gap margin-block-start: 1.2rem auf JEDES direkte Kind
   von .wp-site-blocks — dadurch rutschen Hero und Seitenkopf nach unten.
   Die Abstaende macht bei uns das Innenabstands-System der Abschnitte. */
.wp-site-blocks > * { margin-block-start: 0; }

/* Seitenkopf bekommt Platz, weil der Kopfbereich jetzt darueber liegt */
.fm-seitenkopf { padding-top: 5.5rem; min-height: 250px; }

/* Rand unter dem Kopfbereich */
.wp-site-blocks > header > header { border-bottom: 1px solid rgba(255,255,255,.22); }

/* Hero und Seitenkopf beginnen hinter dem Kopfbereich */
body.home .fm-hero,
.fm-seitenkopf {
	margin-top: calc(-1 * var(--fm-kopfhoehe, 89px));
}

body.home .fm-hero {
	box-sizing: border-box;
	/* genau eine Bildschirmhoehe, der Kopfbereich liegt darin */
	height: 100svh;
	min-height: 560px;
	padding-top: var(--fm-kopfhoehe, 89px);
	padding-bottom: 0;
	align-items: center;
}

.fm-seitenkopf {
	padding-top: calc(var(--fm-kopfhoehe, 89px) + 1.5rem);
	padding-bottom: 1.5rem;
}

/* ------------------------------------------------------------------
   Scroll-Hinweis: Doppelpfeil unter dem Hero, wippt auf und ab
   ------------------------------------------------------------------ */
.fm-scrollhinweis {
	display: block;
	width: 34px;
	margin: 2.5rem auto 0;
	color: var(--wp--preset--color--contrast);
	opacity: .85;
	animation: fm-wippen 1.9s ease-in-out infinite;
	filter: drop-shadow(0 2px 8px rgba(0,0,0,.6));
}

.fm-scrollhinweis:hover { opacity: 1; color: var(--wp--preset--color--accent); }

@keyframes fm-wippen {
	  0%, 100% { transform: translateY(0); }
	 50%       { transform: translateY(10px); }
}

@media (prefers-reduced-motion: reduce) {
	.fm-scrollhinweis { animation: none; }
}

/* Buttons in Norse Bold */
.wp-block-button__link.wp-element-button { font-weight: 700; }

/* ------------------------------------------------------------------
   Shop
   ------------------------------------------------------------------ */
ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--wp--preset--font-family--norse);
	text-transform: uppercase;
	letter-spacing: .03em;
	font-size: 1.15rem;
}

ul.products li.product .price { color: var(--wp--preset--color--contrast-2); }
ul.products li.product .price del { opacity: .55; }
ul.products li.product .price ins { color: var(--wp--preset--color--accent); text-decoration: none; }

ul.products li.product img { border: 1px solid #3a3b3d; }

span.onsale {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base-dark);
	font-family: var(--wp--preset--font-family--norse);
	text-transform: uppercase;
	border-radius: 2px;
	min-height: 0;
	line-height: 1.6;
	padding: .2rem .7rem;
}

.woocommerce-breadcrumb { color: var(--wp--preset--color--contrast-3); font-size: .9rem; }
.woocommerce-result-count,
.woocommerce-ordering select { color: var(--wp--preset--color--contrast-2); }
.woocommerce-ordering select {
	background: var(--wp--preset--color--base-dark);
	border: 1px solid #3a3b3d;
	padding: .35rem .6rem;
}

/* Der Seitenkopf zeigt den Titel bereits — WooCommerce-Ueberschrift raus */
.woocommerce-products-header { display: none; }
.woocommerce-breadcrumb { margin-bottom: 1.5rem; }
/* Produkttitel auf der Einzelseite ebenfalls, steht im Seitenkopf */
.single-product .product_title { display: none; }

/* „Warenkorb anzeigen" nach dem Hinzufuegen: Abstand zum Button */
a.added_to_cart {
	display: block;
	width: fit-content;
	clear: both;
	margin: .9rem 0 0;
	font-family: var(--wp--preset--font-family--norse);
	text-transform: uppercase;
	letter-spacing: .05em;
	color: var(--wp--preset--color--accent);
	border-bottom: 1px solid currentColor;
	padding-bottom: 2px;
}

ul.products li.product .button { display: block; width: fit-content; }
ul.products li.product .button + .added_to_cart { margin-left: 0; }

/* Express-Bezahlbuttons: Luft zwischen den einzelnen Anbietern.
   Die Buttons selbst liegen in Fremd-Iframes (PayPal, Stripe) und lassen sich
   von hier nicht gestalten — Groesse und Farbe kommen aus den Plugin-Einstellungen. */
.wc-block-components-express-payment__event-buttons > li,
.wc-block-components-express-payment__content > div > div { margin-block: .45rem; }

.wc-block-cart__payment-options { padding-top: 1.5rem; }

/* Logo sitzt optisch etwas hoch */
.wp-block-site-logo img { position: relative; top: 3px; }

/* Produktgalerie: Miniaturen nie groesser als die Bilddatei selbst */
div.product div.images .flex-control-thumbs li {
	max-width: 150px;
}

div.product div.images .flex-control-thumbs img {
	border: 1px solid #3a3b3d;
	opacity: .75;
	transition: opacity .2s ease;
}

div.product div.images .flex-control-thumbs img.flex-active,
div.product div.images .flex-control-thumbs img:hover { opacity: 1; }

/* ------------------------------------------------------------------
   Variantenauswahl auf der Produktseite
   WooCommerce baut das als Tabelle mit Label links und Auswahlfeld rechts.
   Auf dunklem Grund war das Feld hell mit grauer Schrift — hier neu gesetzt
   und untereinander gestellt.
   ------------------------------------------------------------------ */
div.product form.cart .variations,
div.product form.cart .variations tbody,
div.product form.cart .variations tr,
div.product form.cart .variations th,
div.product form.cart .variations td {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	text-align: left;
}

div.product form.cart .variations tr + tr { margin-top: 1rem; }

div.product form.cart .variations th.label label {
	font-family: var(--wp--preset--font-family--norse);
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: 1.05rem;
	color: var(--wp--preset--color--contrast);
	display: block;
	margin-bottom: .45rem;
}

div.product form.cart .variations td.value { margin-bottom: .4rem; }

div.product form.cart select,
.woocommerce-ordering select,
select.orderby {
	appearance: none;
	width: 100%;
	max-width: 340px;
	background-color: var(--wp--preset--color--base-dark);
	color: var(--wp--preset--color--contrast);
	border: 1px solid #4a4b4d;
	border-radius: 2px;
	padding: .7rem 2.4rem .7rem .9rem;
	font-size: 1rem;
	line-height: 1.3;
	cursor: pointer;
	background-image: linear-gradient(45deg, transparent 50%, var(--wp--preset--color--accent) 50%),
	                  linear-gradient(135deg, var(--wp--preset--color--accent) 50%, transparent 50%);
	background-position: calc(100% - 20px) calc(1.15em), calc(100% - 14px) calc(1.15em);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
}

div.product form.cart select:focus {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 1px;
}

div.product form.cart select option { background: var(--wp--preset--color--base-dark); color: var(--wp--preset--color--contrast); }

div.product form.cart .reset_variations {
	display: inline-block;
	margin-top: .5rem;
	font-size: .9rem;
	color: var(--wp--preset--color--contrast-3);
}

div.product form.cart .quantity input.qty {
	background: var(--wp--preset--color--base-dark);
	color: var(--wp--preset--color--contrast);
	border: 1px solid #4a4b4d;
	border-radius: 2px;
	padding: .6rem .4rem;
}

div.product form.cart .single_variation_wrap { margin-top: 1rem; }

/* ------------------------------------------------------------------
   Vorrang gegenueber dem WooCommerce-Stylesheet
   Dessen Regeln sind mit .woocommerce div.product form.cart .variations select
   spezifischer als unsere. Deshalb hier gleiche Struktur plus ein Element mehr.
   ------------------------------------------------------------------ */
.woocommerce div.product form.cart .variations td.value select,
body div.product form.cart .variations td.value select {
	max-width: 340px;
	width: 100%;
	background-color: var(--wp--preset--color--base-dark);
	color: var(--wp--preset--color--contrast);
	border: 1px solid #4a4b4d;
	border-radius: 2px;
	padding: .7rem 2.4rem .7rem .9rem;
}

.woocommerce div.product div.images ul.flex-control-thumbs li,
body div.product div.images ul.flex-control-thumbs li {
	max-width: 150px;
	width: 150px;
}

.woocommerce table.variations tr td select { padding: .7rem 2.4rem .7rem .9rem; }

/* ------------------------------------------------------------------
   Mobiles Menue
   ------------------------------------------------------------------ */
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: rgba(14, 15, 16, .96);
	backdrop-filter: blur(10px);
	padding-top: 5rem;
}

.wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation__responsive-container.is-menu-open a {
	color: var(--wp--preset--color--contrast);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	gap: 1.6rem;
	font-size: 1.6rem;
}

.wp-block-navigation__responsive-container.is-menu-open a:hover { color: var(--wp--preset--color--accent); }

.wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--contrast); }
.wp-block-navigation__responsive-container-close:hover { color: var(--wp--preset--color--accent); }

/* Hintergrund nicht mitscrollen lassen, solange das Menue offen ist */
body:has(.wp-block-navigation__responsive-container.is-menu-open) { overflow: hidden; }

/* Burger mit drei Strichen statt der zwei aus dem Standard */
.wp-block-navigation__responsive-container-open svg { display: none; }

.wp-block-navigation__responsive-container-open {
	position: relative;
	width: 30px;
	height: 22px;
	color: var(--wp--preset--color--contrast);
}

.wp-block-navigation__responsive-container-open::before,
.wp-block-navigation__responsive-container-open::after,
.wp-block-navigation__responsive-container-open > span.fm-balken {
	content: "";
	position: absolute;
	left: 0;
	width: 30px;
	height: 2px;
	background: currentColor;
	border-radius: 1px;
}

.wp-block-navigation__responsive-container-open::before { top: 2px; }
.wp-block-navigation__responsive-container-open > span.fm-balken { top: 10px; }
.wp-block-navigation__responsive-container-open::after  { top: 18px; }

/* Warenkorb: Artikelbeschreibung ausblenden */
.wc-block-components-product-metadata__description,
.woocommerce-cart .product-name .wc-block-components-product-metadata__description,
.wc-block-cart-item__wrap .wc-block-components-product-metadata__description { display: none; }

/* WordPress gibt die Preset-Farbe als .has-base-dark-background-color mit !important
   aus. Ohne !important kommt man hier nicht dagegen an — deshalb ausnahmsweise. */
.wp-block-navigation__responsive-container.is-menu-open.has-base-dark-background-color,
.wp-block-navigation__responsive-container.is-menu-open.has-background {
	background-color: rgba(14, 15, 16, .72) !important;
	backdrop-filter: blur(16px);
}

/* ------------------------------------------------------------------
   Warenkorb im Kopfbereich
   ------------------------------------------------------------------ */
.fm-warenkorb .wc-block-mini-cart__button {
	color: var(--wp--preset--color--contrast);
	padding: .25rem .4rem;
}

.fm-warenkorb .wc-block-mini-cart__button:hover { color: var(--wp--preset--color--accent); }

.fm-warenkorb .wc-block-mini-cart__badge {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base-dark);
	font-family: var(--wp--preset--font-family--norse);
	font-weight: 700;
}

.fm-warenkorb .wc-block-mini-cart__quantity-badge { color: inherit; }

/* Shop-Leiste ueber dem Footer */
.fm-shopleiste a {
	color: var(--wp--preset--color--contrast-3);
	white-space: nowrap;
}

.fm-shopleiste a:hover { color: var(--wp--preset--color--accent); }

/* Angebots-Marke: WooCommerce liefert einen olivgruenen Kreis.
   Dessen Regel ist .woocommerce span.onsale — hier eine Ebene spezifischer. */
.woocommerce span.onsale,
.woocommerce ul.products li.product span.onsale,
body div.product span.onsale,
body span.onsale {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base-dark);
	font-family: var(--wp--preset--font-family--norse);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	border-radius: 3px;
	min-width: 0;
	min-height: 0;
	width: auto;
	height: auto;
	line-height: 1.5;
	padding: .25rem .8rem;
	font-size: .95rem;
	top: 10px;
	left: 10px;
	right: auto;
	margin: 0;
	box-shadow: 0 2px 10px rgba(0,0,0,.45);
}

/* ------------------------------------------------------------------
   Feinschliff 07.08.
   ------------------------------------------------------------------ */

/* Kopfbereich: Menue und Warenkorb rechts, mit mittlerem Abstand dazwischen */
.fm-kopf-rechts {
	gap: 1.6rem;
	align-items: center;
}

/* Buttons brechen auf schmalen Schirmen nicht mehr um */
.wp-block-button__link.wp-element-button,
a.button,
button.button { white-space: nowrap; }

/* „Wir suchen dich": gleiche Hoehe wie eine Textzeile, ohne Innenabstand oben/unten */
.fm-bandreihe .is-style-outline .wp-block-button__link.wp-element-button {
	padding-top: 0;
	padding-bottom: 0;
	height: 38px;
	display: inline-flex;
	align-items: center;
}

/* Trennstriche exakt mittig zwischen den drei Videos:
   gleicher Innenabstand links wie rechts, Linie sitzt auf der Spaltenkante. */
@media (min-width: 782px) {
	.fm-videoreihe { gap: 0; }

	.fm-videoreihe > .wp-block-column {
		padding-inline: 2.5rem;
		border-left: 1px solid #3a3b3d;
	}

	.fm-videoreihe > .wp-block-column:first-child {
		border-left: 0;
		padding-inline-start: 0;
	}

	.fm-videoreihe > .wp-block-column:last-child { padding-inline-end: 0; }
}

/* Instagram-Feed schmaler */
#sb_instagram {
	max-width: 900px;
	margin-inline: auto;
}

/* ------------------------------------------------------------------
   Feinschliff 07.08., zweite Runde
   ------------------------------------------------------------------ */

/* Menue/Warenkorb: mehr Luft, im Burger-Modus keine */
.fm-kopf-rechts { gap: 1.8rem; }

@media (max-width: 781px) {
	.fm-kopf-rechts { gap: .7rem; }
	.fm-videoreihe { gap: 2.4em; }
}

/* Auf der Warenkorbseite blendet WooCommerce das Symbol aus — Platz nicht offen lassen */
.woocommerce-cart .fm-warenkorb,
.woocommerce-checkout .fm-warenkorb { display: none; }

/* PayPal-Schaltflaechen duerfen nicht ueber dem Kopfbereich liegen */
.wp-site-blocks > header { z-index: 200; }
.wc-block-components-express-payment,
.ppcp-messages,
.paypal-buttons { z-index: 1 !important; }
