/* FITVYR® – Saison-Masken (live seit 09.11.2026). Wirkt nur mit html[data-saison]; ohne Maske
   greift keine Regel. Farben nur aus dem CI: Weiß, Sand #D8CA9F, Anthrazit #1D1D1D, Gold nur grafisch. Kein helles Beige,
   keine Schatten (Regelwerk fitvyr.css). Familien: bf = Black Friday (Stufe 1 Black Weeks, 2 Black Week, 3 Black Friday),
   cm = Cyber Monday, wn = Weihnachten; je zwei Varianten a und b. */

/* ---------- Gemeinsam ---------- */
.sz-entwurf { display: inline-flex; align-items: center; font: 700 10px/1 var(--schrift); letter-spacing: .14em; text-transform: uppercase;
  border: 1px dashed currentColor; border-radius: 999px; padding: 4px 8px; opacity: .8; white-space: nowrap; }
.sz-stern { width: 12px; height: 12px; flex: none; color: var(--sand); }
.sz-app { width: 22px; height: 22px; border-radius: 6px; flex: none; }

.sz-leiste { position: relative; z-index: 41; font-size: 13px; background: var(--anth); color: rgba(255,255,255,.9); overflow: hidden; }
.sz-leiste .wrap { display: flex; align-items: center; justify-content: center; gap: 14px; min-height: 44px; padding-block: 6px; }
.sz-leiste b { font: 400 22px/1 var(--anzeige); letter-spacing: .06em; text-transform: uppercase; color: var(--sand); flex: none; }
.sz-leiste a { font-weight: 700; color: inherit; text-decoration: underline; text-underline-offset: 3px; flex: none; }
.sz-l-lang, .sz-l-kurz { display: inline-flex; align-items: center; gap: 10px; min-width: 0; }
.sz-l-kurz { display: none; }
@media (max-width: 720px) {
  .sz-l-lang { display: none; }
  .sz-l-kurz { display: inline-flex; }
  .sz-leiste .wrap { gap: 10px; min-height: 40px; }
  .sz-leiste b { font-size: 19px; }
  .sz-leiste .sz-entwurf { display: none; }
}

.sz-held .sz-titel { margin: 10px 0 0; line-height: .88; }
.sz-held .lead { max-width: 36em; }
.sz-chips { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 20px 0 0; }
.sz-chips li { border: 1px solid currentColor; border-radius: 999px; padding: 7px 14px; font-size: 13px; font-weight: 700; }
.sz-held .knoepfe { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.sz-held .sz-entwurf { margin-top: 18px; }
.sz-kicker { display: flex; align-items: center; gap: 10px; }

/* Startbild über der vorhandenen Bühne: das Video bleibt, Text und Knöpfe der Bühne sind nur überdeckt */
.st-buehne.sz-ueberdeckt > .wrap { display: none; }
.sz-held-ueber { position: relative; z-index: 1; width: 100%; }
.sz-held-ueber > .wrap { padding-top: clamp(80px, 14vh, 160px); padding-bottom: clamp(48px, 9vh, 96px); }
.sz-held-ueber .sz-kicker { color: var(--sand); }
.sz-held-ueber .lead { color: rgba(255,255,255,.86); }
.sz-held-ueber .sz-chips { color: var(--sand); }

/* Eigenes Startbild vor der Bühne */
.sz-held-eigen { position: relative; isolation: isolate; padding: clamp(40px, 6vw, 80px) 0; }
.sz-held-raster { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(28px, 4vw, 64px); align-items: center; }
.sz-held-eigen .sz-titel { font-size: clamp(60px, 8.6vw, 140px); }
.sz-held-bild { margin: 0; border-radius: var(--r-karte); overflow: hidden; }
.sz-held-bild img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 860px) {
  .sz-held-raster { grid-template-columns: 1fr; }
  .sz-held-eigen .sz-titel { font-size: clamp(56px, 16vw, 96px); }
}

/* Abzeichen an Produktkacheln: Band über dem Produktbild */
.sz-abzeichen { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; padding: 10px 16px; background: var(--anth); color: #fff;
  font-size: 13px; font-weight: 700; line-height: 1.25; text-align: left; }
.sz-abzeichen b { font: 400 19px/1 var(--anzeige); letter-spacing: .06em; text-transform: uppercase; color: var(--sand); }
.sz-abzeichen .sz-entwurf { margin-left: auto; font-size: 8px; padding: 3px 6px; }

/* Bonus-Box unter dem Preis */
.sz-bonus { margin-top: 16px; padding: 16px 18px; border-radius: 16px; background: var(--anth); color: rgba(255,255,255,.88); font-size: 14px; }
.sz-bonus-kopf { display: flex; align-items: center; gap: 10px; }
.sz-bonus-kopf b { font: 400 24px/1 var(--anzeige); letter-spacing: .05em; text-transform: uppercase; color: var(--sand); }
.sz-bonus-kopf .sz-entwurf { margin-left: auto; }
.sz-bonus ul { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 7px; }
.sz-bonus li { position: relative; padding-left: 24px; }
.sz-bonus li::before { content: ""; position: absolute; left: 2px; top: .38em; width: 11px; height: 6px; border-left: 2px solid var(--sand); border-bottom: 2px solid var(--sand); transform: rotate(-45deg); }
.sz-bonus-fuss { margin: 12px 0 0; font-size: 12px; opacity: .72; }

/* Hinweis im Warenkorb */
.sz-korb { display: flex; align-items: center; gap: 14px; margin: 6px 0 20px; padding: 14px 18px; border-radius: 16px; background: var(--anth); color: rgba(255,255,255,.86); font-size: 14px; }
.sz-korb > div { display: grid; gap: 2px; flex: 1; }
.sz-korb b { font: 400 22px/1 var(--anzeige); letter-spacing: .05em; text-transform: uppercase; color: var(--sand); }
.sz-korb .sz-app { width: 36px; height: 36px; border-radius: 9px; }
.sz-korb .sz-stern { width: 18px; height: 18px; }

/* ---------- Black Friday A · „Vollton“: Kopf in Anthrazit, Sand als Schrift, Bühne mit Video ---------- */
html[data-saison="bf-a"] .sz-leiste { border-bottom: 1px solid rgba(216,202,159,.35); }
html[data-saison="bf-a"] .kopf { background: rgba(29,29,29,.97); border-bottom-color: rgba(216,202,159,.4); }
html[data-saison="bf-a"] .kopf .marke,
html[data-saison="bf-a"] .kopf .symbol,
html[data-saison="bf-a"] .kopf .nav > li > a { color: #fff; }
html[data-saison="bf-a"] .kopf .nav > li > a:hover,
html[data-saison="bf-a"] .kopf .symbol:hover { background: rgba(255,255,255,.1); }
html[data-saison="bf-a"] .kopf-zeile2 { border-top-color: rgba(255,255,255,.12); }
html[data-saison="bf-a"] .kopf .mm-kopf { background: #fff; border-radius: 10px; padding: 2px 8px; }
html[data-saison="bf-a"] .kopf .nav > li > a.showroom-nav { background: var(--sand); color: var(--anth); }
html[data-saison="bf-a"] .nav-klein .showroom-nav svg { color: var(--anth); }
html[data-saison="bf-a"] .st-buehne::after { background: linear-gradient(90deg, rgba(29,29,29,.94) 0%, rgba(29,29,29,.7) 48%, rgba(29,29,29,.3) 100%); }
html[data-saison="bf-a"] .sz-held-ueber .sz-titel { color: var(--sand); }
html[data-saison="bf-a"] .pk.sz-mit-bonus { border-color: var(--anth); }
/* Stufe 3 (Black Friday, 27.11.): Leiste in Sand, Titel weiß, Sandbalken links am Text */
html[data-saison="bf-a"][data-saison-stufe="3"] .sz-leiste { background: var(--sand); color: var(--anth); }
html[data-saison="bf-a"][data-saison-stufe="3"] .sz-leiste b { color: var(--anth); font-size: 26px; }
html[data-saison="bf-a"][data-saison-stufe="3"] .sz-held-ueber .sz-titel { color: #fff; }
html[data-saison="bf-a"][data-saison-stufe="3"] .sz-held-ueber .sz-held-text { border-left: 8px solid var(--sand); padding-left: clamp(20px, 2.4vw, 36px); }
html[data-saison="bf-a"][data-saison-stufe="3"] .sz-abzeichen { background: var(--sand); color: var(--anth); }
html[data-saison="bf-a"][data-saison-stufe="3"] .sz-abzeichen b { color: var(--anth); }
/* Stufe 1 (Black Weeks): ruhiger, Kopf bleibt weiß */
html[data-saison="bf-a"][data-saison-stufe="1"] .kopf { background: rgba(255,255,255,.94); border-bottom: 2px solid var(--anth); }
html[data-saison="bf-a"][data-saison-stufe="1"] .kopf .marke,
html[data-saison="bf-a"][data-saison-stufe="1"] .kopf .symbol,
html[data-saison="bf-a"][data-saison-stufe="1"] .kopf .nav > li > a { color: var(--anth); }
html[data-saison="bf-a"][data-saison-stufe="1"] .kopf-zeile2 { border-top-color: var(--linie); }
html[data-saison="bf-a"][data-saison-stufe="1"] .kopf .nav > li > a.showroom-nav { background: var(--nacht); color: #fff; }
html[data-saison="bf-a"][data-saison-stufe="1"] .nav-klein .showroom-nav svg { color: var(--sand); }

/* ---------- Black Friday B · „Typo-Band“: weißer Kopf, Laufschrift in Sand-Kontur, eigenes Startbild mit Freisteller ---------- */
html[data-saison="bf-b"] .sz-leiste .wrap { justify-content: space-between; max-width: none; padding-inline: var(--rand); }
html[data-saison="bf-b"] .sz-leiste .sz-l-lang, html[data-saison="bf-b"] .sz-leiste .sz-l-kurz { flex: 1; overflow: hidden; }
html[data-saison="bf-b"] .sz-band { font: 400 28px/1 var(--anzeige); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; color: transparent; -webkit-text-stroke: 1px var(--sand); }
html[data-saison="bf-b"] .kopf { border-bottom: 3px solid var(--anth); }
.sz-bf-b { background: #fff; color: var(--anth); }
.sz-bf-b .sz-kicker { color: var(--golddunkel); }
.sz-bf-b .sz-titel { color: var(--anth); }
.sz-bf-b .sz-titel::after { content: ""; display: block; width: 1.4em; height: .12em; margin-top: .14em; background: var(--sand); }
.sz-bf-b .knopf.rahmenhell { border-color: var(--anth); color: var(--anth); }
.sz-bf-b .sz-held-bild { background: var(--sand); aspect-ratio: 1 / 1.05; display: grid; place-items: center; padding: clamp(20px, 3vw, 40px); }
.sz-bf-b .sz-held-bild img { object-fit: contain; height: 100%; width: auto; max-width: 100%; }
html[data-saison="bf-b"] .sz-abzeichen { background: var(--sand); color: var(--anth); }
html[data-saison="bf-b"] .sz-abzeichen b { color: var(--anth); }
html[data-saison="bf-b"] .sz-bonus { background: #fff; color: var(--text); border: 2px solid var(--anth); padding: 0; overflow: hidden; }
html[data-saison="bf-b"] .sz-bonus-kopf { background: var(--anth); padding: 12px 18px; color: #fff; }
html[data-saison="bf-b"] .sz-bonus ul, html[data-saison="bf-b"] .sz-bonus-fuss { margin-inline: 18px; }
html[data-saison="bf-b"] .sz-bonus ul { margin-top: 14px; }
html[data-saison="bf-b"] .sz-bonus-fuss { margin-bottom: 14px; }
html[data-saison="bf-b"] .sz-bonus li::before { border-color: var(--anth); }
html[data-saison="bf-b"] .sz-korb { background: var(--sand); color: var(--anth); }
html[data-saison="bf-b"] .sz-korb b { color: var(--anth); }
/* Stufe 3: Startbild kippt auf Anthrazit */
html[data-saison="bf-b"][data-saison-stufe="3"] .sz-bf-b { background: var(--anth); color: #fff; }
html[data-saison="bf-b"][data-saison-stufe="3"] .sz-bf-b .sz-titel { color: var(--sand); }
html[data-saison="bf-b"][data-saison-stufe="3"] .sz-bf-b .sz-kicker { color: var(--sand); }
html[data-saison="bf-b"][data-saison-stufe="3"] .sz-bf-b .lead { color: rgba(255,255,255,.86); }
html[data-saison="bf-b"][data-saison-stufe="3"] .sz-bf-b .knopf.rahmenhell { border-color: rgba(246,243,236,.7); color: #fff; }
html[data-saison="bf-b"][data-saison-stufe="1"] .sz-bf-b .sz-held-bild { background: var(--anth); }

/* ---------- Cyber Monday A · „Digital“: Anthrazit mit Sand-Raster, Coach-Screens ---------- */
.sz-cm-a, html[data-saison="cm-a"] .sz-leiste, html[data-saison="cm-a"] .sz-bonus, html[data-saison="cm-a"] .sz-korb {
  background-color: var(--anth);
  background-image: linear-gradient(rgba(216,202,159,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(216,202,159,.13) 1px, transparent 1px);
  background-size: 32px 32px; }
.sz-cm-a { color: #fff; background-size: 48px 48px; }
.sz-cm-a .sz-kicker { color: var(--sand); }
.sz-cm-a .sz-kicker .sz-app { width: 30px; height: 30px; border-radius: 8px; }
.sz-cm-a .sz-titel { color: #fff; }
.sz-cm-a .lead { color: rgba(255,255,255,.84); }
.sz-cm-a .sz-chips { color: var(--sand); }
html[data-saison="cm-a"] .sz-leiste b { color: #fff; }
html[data-saison="cm-a"] .kopf { border-bottom: 2px solid var(--sand); }
.sz-handys { display: flex; justify-content: center; align-items: center; padding: 24px 0; }
.sz-handys img { width: 34%; max-width: 250px; height: auto; border-radius: 26px; border: 1px solid rgba(216,202,159,.6); background: #000; }
.sz-handys img:nth-child(1) { transform: translateY(-28px); position: relative; z-index: 2; }
.sz-handys img:nth-child(2) { margin-left: -5%; position: relative; z-index: 1; }
.sz-handys img:nth-child(3) { margin-left: -5%; transform: translateY(28px); }
@media (max-width: 860px) { .sz-handys img { width: 30%; border-radius: 16px; } }
html[data-saison="cm-a"] .sz-abzeichen { padding-left: 12px; }
html[data-saison="cm-a"] .sz-abzeichen b { color: #fff; }
html[data-saison="cm-a"] .sz-abzeichen span:not(.sz-entwurf) { color: var(--sand); }

/* ---------- Cyber Monday B · „Hell & live“: Weiß, Foto mit Coach-Handy, Sand-Punktraster ---------- */
html[data-saison="cm-b"] .sz-leiste { background: var(--sand); color: var(--anth); }
html[data-saison="cm-b"] .sz-leiste b { color: var(--anth); }
.sz-cm-b { background: #fff; color: var(--anth); }
.sz-cm-b .sz-kicker { color: var(--golddunkel); }
.sz-cm-b .sz-titel { color: var(--anth); font-size: clamp(56px, 7.4vw, 120px); }
.sz-cm-b .sz-held-bild { position: relative; overflow: visible; }
.sz-cm-b .sz-held-bild::before { content: ""; position: absolute; inset: 22px -22px -22px 22px; z-index: -1; border-radius: var(--r-karte);
  background-image: radial-gradient(var(--sand) 1.6px, transparent 1.8px); background-size: 16px 16px; }
.sz-cm-b .sz-held-bild img { border-radius: var(--r-karte); aspect-ratio: 1024 / 1100; }
html[data-saison="cm-b"] .sz-abzeichen { background: #fff; color: var(--anth); border: 1.5px solid var(--anth); }
html[data-saison="cm-b"] .sz-abzeichen b { color: var(--anth); }
html[data-saison="cm-b"] .sz-bonus { background: #fff; color: var(--text); border: 1.5px solid var(--anth); }
html[data-saison="cm-b"] .sz-bonus-kopf b { color: var(--anth); }
html[data-saison="cm-b"] .sz-bonus li::before { border-color: var(--anth); }
html[data-saison="cm-b"] .sz-korb { background: #fff; color: var(--text); border: 1.5px solid var(--anth); }
html[data-saison="cm-b"] .sz-korb b { color: var(--anth); }
@media (max-width: 860px) { .sz-cm-b .sz-held-bild::before { inset: 14px -10px -14px 14px; } }

/* ---------- Weihnachten A · „Sand & Gold“: Leiste in Sand mit Sternen, Wohnzimmerfoto mit feinem Rahmen ---------- */
html[data-saison="wn-a"] .sz-leiste { background: var(--sand); color: var(--anth); }
html[data-saison="wn-a"] .sz-leiste b { color: var(--anth); }
html[data-saison="wn-a"] .sz-leiste .sz-stern { color: var(--anth); }
html[data-saison="wn-a"] .kopf { border-bottom: 4px double var(--sand); }
.sz-wn-a { color: #fff; min-height: min(78vh, 720px); display: grid; align-items: end; padding: 0; background: var(--anth); overflow: hidden; }
.sz-wn-a .sz-held-raster { display: block; width: 100%; padding-block: clamp(72px, 10vh, 120px) clamp(56px, 8vh, 96px); }
.sz-wn-a .sz-held-text { position: relative; z-index: 2; max-width: 640px; }
.sz-wn-a .sz-held-bild { position: absolute; inset: 0 0 0 32%; border-radius: 0; z-index: -1; } /* Foto rechts, damit der Titel niemanden verdeckt */
.sz-wn-a .sz-held-bild::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(29,29,29,1) 0%, rgba(29,29,29,.55) 22%, rgba(29,29,29,0) 50%); }
.sz-wn-a::before { content: ""; position: absolute; inset: 16px; z-index: 1; border: 1px solid rgba(216,202,159,.75); border-radius: 18px; pointer-events: none; }
.sz-wn-a::after { content: ""; position: absolute; top: 0; left: 50%; width: 120px; height: 34px; transform: translateX(-50%); z-index: 1; pointer-events: none;
  background: var(--anth) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 34'%3E%3Cg fill='%23d8ca9f'%3E%3Cpath d='M60 6l2 9 9 2-9 2-2 9-2-9-9-2 9-2z'/%3E%3Cpath d='M36 15l1 4 4 1-4 1-1 4-1-4-4-1 4-1zM84 15l1 4 4 1-4 1-1 4-1-4-4-1 4-1z'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }
.sz-wn-a .sz-kicker { color: var(--sand); }
.sz-wn-a .sz-titel { color: #fff; }
.sz-wn-a .lead { color: rgba(255,255,255,.86); }
.sz-wn-a .sz-chips { color: var(--sand); }
html[data-saison="wn-a"] .sz-abzeichen { background: var(--sand); color: var(--anth); }
html[data-saison="wn-a"] .sz-abzeichen b { color: var(--anth); }
html[data-saison="wn-a"] .pk.sz-mit-bonus { border-color: var(--sand); }
html[data-saison="wn-a"] .sz-bonus { background: #fff; color: var(--text); border: 1px solid var(--sand); outline: 1px solid var(--sand); outline-offset: 4px; margin-top: 20px; }
html[data-saison="wn-a"] .sz-bonus-kopf b { color: var(--anth); }
html[data-saison="wn-a"] .sz-bonus-kopf .sz-stern { color: var(--gold); width: 16px; height: 16px; }
html[data-saison="wn-a"] .sz-bonus li::before { border-color: var(--gold); }
html[data-saison="wn-a"] .sz-korb { background: var(--sand); color: var(--anth); }
html[data-saison="wn-a"] .sz-korb b { color: var(--anth); }
html[data-saison="wn-a"] .sz-korb .sz-stern { color: var(--anth); }
@media (max-width: 720px) {
  .sz-wn-a { min-height: 560px; }
  .sz-wn-a .sz-held-bild { inset: 0; }
  .sz-wn-a .sz-held-bild img { object-position: 70% center; }
  .sz-wn-a .sz-held-bild::after { background: linear-gradient(0deg, rgba(29,29,29,.92) 0%, rgba(29,29,29,.7) 55%, rgba(29,29,29,.2) 100%); }
}

/* ---------- Weihnachten B · „Advent“: Bühne mit Video, Sternenlinie, Adventskalender ---------- */
html[data-saison="wn-b"] .sz-leiste { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 44'%3E%3Cg fill='none' stroke='%23d8ca9f' stroke-opacity='.35'%3E%3Cpath d='M0 30 L40 14 L80 26 L120 8 L160 22 L200 12 L240 30'/%3E%3C/g%3E%3Cg fill='%23d8ca9f' fill-opacity='.55'%3E%3Ccircle cx='40' cy='14' r='1.6'/%3E%3Ccircle cx='80' cy='26' r='1.2'/%3E%3Ccircle cx='120' cy='8' r='1.8'/%3E%3Ccircle cx='160' cy='22' r='1.2'/%3E%3Ccircle cx='200' cy='12' r='1.6'/%3E%3C/g%3E%3C/svg%3E"); background-size: 240px 44px; }
html[data-saison="wn-b"] .kopf { border-bottom: 2px solid var(--sand); }
html[data-saison="wn-b"] .st-buehne::after { background: linear-gradient(90deg, rgba(29,29,29,.93) 0%, rgba(29,29,29,.66) 50%, rgba(29,29,29,.28) 100%); }
html[data-saison="wn-b"] .sz-held-ueber::before { content: ""; position: absolute; left: 0; right: 0; top: 24px; height: 120px; pointer-events: none; opacity: .9;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 120'%3E%3Cg fill='none' stroke='%23d8ca9f' stroke-opacity='.4'%3E%3Cpath d='M20 90 L110 40 L190 70 L280 20 L370 60 L460 30 L580 80'/%3E%3C/g%3E%3Cg fill='%23d8ca9f'%3E%3Cpath d='M280 8l3 9 9 3-9 3-3 9-3-9-9-3 9-3z'/%3E%3Ccircle cx='110' cy='40' r='2.4'/%3E%3Ccircle cx='190' cy='70' r='1.8'/%3E%3Ccircle cx='370' cy='60' r='2'/%3E%3Ccircle cx='460' cy='30' r='2.4'/%3E%3Ccircle cx='20' cy='90' r='1.6'/%3E%3Ccircle cx='580' cy='80' r='1.8'/%3E%3C/g%3E%3C/svg%3E") left center / auto 100% repeat-x; }
html[data-saison="wn-b"] .sz-held-ueber .sz-titel { color: #fff; }
html[data-saison="wn-b"] .sz-held-ueber > .wrap { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 56px; align-items: end; }
.sz-advent { list-style: none; display: grid; grid-template-columns: repeat(6, 50px); gap: 7px; padding: 0; margin: 0; }
.sz-advent li { aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(216,202,159,.6); border-radius: 10px; font: 400 23px/1 var(--anzeige); color: var(--sand); }
.sz-advent li.offen { color: rgba(255,255,255,.45); border-color: rgba(255,255,255,.2); }
.sz-advent li.heute { background: var(--sand); border-color: var(--sand); color: var(--anth); }
@media (max-width: 860px) { html[data-saison="wn-b"] .sz-held-ueber > .wrap { grid-template-columns: 1fr; gap: 28px; } .sz-advent { grid-template-columns: repeat(8, 1fr); gap: 5px; } .sz-advent li { font-size: 18px; border-radius: 8px; } }
html[data-saison="wn-b"] .sz-abzeichen b::before { content: "✦ "; color: var(--sand); }
html[data-saison="wn-b"] .sz-bonus { background: var(--sand); color: var(--anth); }
html[data-saison="wn-b"] .sz-bonus-kopf b { color: var(--anth); }
html[data-saison="wn-b"] .sz-bonus-kopf .sz-stern { color: var(--anth); width: 16px; height: 16px; }
html[data-saison="wn-b"] .sz-bonus li::before { border-color: var(--anth); }
html[data-saison="wn-b"] .sz-korb .sz-stern { color: var(--sand); }

/* ---------- Black Friday C und D (08.11. abends, nach Joshuas Header-Idee) ----------
   Schwarze Maske über dem echten Startvideo, der Schriftzug ist ausgestanzt (weiße Schrift auf Schwarz mit multiply: Schwarz
   deckt, in den Buchstaben läuft das Video). Links unten die Infozone mit Zeitraum, Gratis-Zugaben und zwei Knöpfen.
   C: Infozone und Akzente in Sand. D: Signalrot #E4252B, Saison-Signalfarbe außerhalb der CI, nur für Black Friday freigegeben. */
html[data-saison="bf-c"] { --sz-akzent: var(--sand); --sz-auf-akzent: var(--anth); }
html[data-saison="bf-d"] { --sz-akzent: #E4252B; --sz-auf-akzent: #fff; }

.st-buehne.sz-maske-buehne { min-height: calc(100svh - var(--kopf-h) - 48px); background: #000; }
.sz-maske-buehne::after, .sz-maske-buehne .fx-pfeil-runter { display: none; }
.sz-maske-buehne .fx-buehne-medium video { filter: brightness(2.3) contrast(1.1); } /* das Video ist dunkel gedreht, in den Buchstaben soll man es sehen */
.sz-maske { position: absolute; inset: 0; z-index: 0; background: rgba(0,0,0,.82); mix-blend-mode: multiply; pointer-events: none; } /* 82 % Deckkraft: Video scheint leicht durch (Joshua 09.11.) */
.st-buehne .sz-worte { position: absolute; left: 28.4%; top: 6%; width: 62%; height: 86%; margin: 0; max-width: none; display: flex; flex-direction: column;
  justify-content: center; color: #fff; font: 400 100px/.8 var(--anzeige); letter-spacing: .005em; text-transform: uppercase; }
.sz-worte span { display: block; width: fit-content; }
.sz-rahmen { position: absolute; z-index: 1; left: 14.7%; top: 5.6%; right: 0; bottom: clamp(24px, 4.5vh, 48px); border-top: 1.5px solid var(--sz-akzent);
  border-left: 1.5px solid var(--sz-akzent); pointer-events: none; }
.sz-info { position: relative; z-index: 2; align-self: end; justify-self: start; margin: 0 0 clamp(24px, 4.5vh, 48px) 5%; width: clamp(300px, 19.5vw, 400px);
  display: grid; gap: 14px; padding: 26px 24px 22px; background: var(--sz-akzent); color: var(--sz-auf-akzent); }
.sz-info-zeit { margin: 0; font-weight: 800; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.sz-info-titel { margin: 0; font: 400 clamp(32px, 2.6vw, 44px)/.95 var(--anzeige); text-transform: uppercase; }
.sz-info ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; font-size: 14px; line-height: 1.3; }
.sz-info li { position: relative; padding-left: 26px; }
.sz-info li::before { content: "+"; position: absolute; left: 0; top: -2px; font: 400 26px/1 var(--anzeige); }
.sz-info li b { display: block; font-size: 16px; }
.sz-info-fuss { margin: -4px 0 0; font-size: 12px; line-height: 1.3; opacity: .8; }
.sz-info-knoepfe { display: grid; gap: 10px; margin-top: 4px; }
.sz-info .knopf, .sz-gratis-band .knopf { min-height: 48px; padding: 0 18px; }
.knopf.sz-k1 { background: #000; border-color: #000; color: #fff; }
.knopf.sz-k1:hover { background: #fff; color: #000; }
.knopf.sz-k2 { background: transparent; border-color: currentColor; color: inherit; }
.sz-info .sz-entwurf { justify-self: start; }

/* Die Zugaben groß unter der Bühne */
.sz-gratis-band { background: #000; color: #fff; padding: clamp(44px, 5vw, 76px) 0; }
.sz-gratis-kicker { margin: 0; color: var(--sz-akzent); font-weight: 800; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.sz-gratis-band h2 { color: #fff; font-size: clamp(52px, 6vw, 96px); margin: 8px 0 0; }
.sz-gratis-band ul { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; }
.sz-gratis-band li { display: grid; gap: 8px; align-content: start; padding: 22px; border: 1.5px solid rgba(255,255,255,.24); }
.sz-gratis-band li b { font: 400 clamp(36px, 3.4vw, 54px)/.95 var(--anzeige); text-transform: uppercase; }
.sz-gratis-band li > span:last-child { color: rgba(255,255,255,.76); font-size: 15px; }
.sz-gratis-band .knoepfe { display: flex; align-items: center; gap: 16px; margin-top: 26px; }
.sz-gratis-band .knopf.sz-k1 { background: var(--sz-akzent); border-color: var(--sz-akzent); color: var(--sz-auf-akzent); }
.sz-tag { justify-self: start; display: inline-flex; align-items: center; background: var(--sz-akzent); color: var(--sz-auf-akzent); padding: 6px 10px;
  border-radius: 999px; font: 800 12px/1 var(--schrift); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }

/* Leiste, Kacheln, Bonus-Box, Warenkorb: Schwarz mit Akzent */
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-leiste { background: #000; color: #fff; font-size: 14px; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-leiste .wrap { min-height: 48px; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-leiste b { font-size: 30px; color: var(--sz-akzent); }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-leiste a { background: var(--sz-akzent); color: var(--sz-auf-akzent); text-decoration: none; padding: 8px 14px; border-radius: 999px; font-size: 13px; }
html:is([data-saison="bf-c"], [data-saison="bf-d"])[data-saison-stufe="3"] .sz-leiste { background: var(--sz-akzent); color: var(--sz-auf-akzent); }
html:is([data-saison="bf-c"], [data-saison="bf-d"])[data-saison-stufe="3"] .sz-leiste b { color: var(--sz-auf-akzent); }
html:is([data-saison="bf-c"], [data-saison="bf-d"])[data-saison-stufe="3"] .sz-leiste a { background: #000; color: #fff; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) a.pk.sz-mit-bonus { border: 2px solid #000; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-abzeichen { background: #000; padding: 12px 14px; gap: 6px 10px; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-abzeichen b { font-size: 26px; color: #fff; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-bonus { background: #000; color: #fff; padding: 18px 20px 16px; border-top: 8px solid var(--sz-akzent); font-size: 15px; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-bonus-kopf b { font-size: 34px; color: #fff; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-bonus li { font-weight: 700; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-bonus li::before { border-color: var(--sz-akzent); }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-korb { background: #000; color: #fff; border-left: 10px solid var(--sz-akzent); border-radius: 12px; padding: 16px 20px; }
html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-korb b { font-size: 28px; color: var(--sz-akzent); }

@media (max-width: 720px) {
  .st-buehne.sz-maske-buehne { min-height: calc(100svh - var(--kopf-h) - 44px); }
  .st-buehne .sz-worte { left: 16px; right: 16px; top: 16px; width: auto; height: auto; bottom: 320px; justify-content: center; }
  .sz-rahmen { display: none; }
  .sz-info { justify-self: stretch; width: auto; margin: 0 16px 16px; padding: 18px 18px 16px; gap: 10px; }
  .sz-info-titel { font-size: 28px; }
  .sz-info ul { grid-template-columns: 1fr 1fr; gap: 8px 14px; font-size: 13px; }
  .sz-info li { padding-left: 20px; }
  .sz-info li::before { font-size: 22px; }
  .sz-info li b { font-size: 14px; }
  .sz-info-knoepfe { grid-template-columns: 1fr 1fr; }
  .sz-info .knopf { min-height: 46px; padding: 0 10px; font-size: 14px; }
  .sz-gratis-band .knoepfe { flex-wrap: wrap; }
  html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-leiste b { font-size: 24px; }
  html:is([data-saison="bf-c"], [data-saison="bf-d"]) .sz-leiste a { padding: 6px 10px; font-size: 12px; }
}

/* ---------- Black Friday E und F (dritter Wurf, 08.11. abends) ----------
   Basis D: schwarze Maske, ausgestanzter Schriftzug, Signalrot #E4252B. Aber ohne Infoblock: Text und Knöpfe stehen direkt auf
   Schwarz, Rot nur als Akzent (Datumszeile, Plus, feine Linien, Hauptknopf). E mit feiner roter Rahmenlinie, F ganz frei. */
html:is([data-saison="bf-e"], [data-saison="bf-f"]) { --sz-rot: #E4252B; --sz-akzent: #E4252B; --sz-auf-akzent: #fff; }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .st-buehne .sz-worte { left: 34%; width: 60%; top: 8%; height: 84%; }
html[data-saison="bf-e"] .sz-rahmen { left: 5%; top: 5.6%; right: 0; bottom: auto; border-width: 1px; }
html[data-saison="bf-e"] .sz-rahmen { bottom: 50%; }

.sz-frei { position: relative; z-index: 2; align-self: end; justify-self: start; margin: 0 0 clamp(28px, 5.5vh, 60px) 5%; width: clamp(370px, 26vw, 440px);
  display: grid; gap: 14px; color: #fff; }
.sz-zeit { display: flex; align-items: center; gap: 12px; margin: 0; color: var(--sz-rot); font: 800 12px/1.2 var(--schrift); letter-spacing: .16em; text-transform: uppercase; }
.sz-zeit::before { content: ""; width: 28px; height: 1.5px; background: currentColor; flex: none; }
.sz-zeit .sz-entwurf { margin-left: auto; color: rgba(255,255,255,.7); letter-spacing: .12em; }
.sz-titel3 { margin: 0; font: 400 clamp(34px, 3vw, 48px)/.95 var(--anzeige); letter-spacing: .01em; text-transform: uppercase; color: #fff; }
.sz-pakete { margin: 4px 0 0; padding: 0; display: grid; }
.sz-pakete > div { display: grid; grid-template-columns: 88px 1fr; gap: 14px; align-items: baseline; padding: 10px 0; border-top: 1px solid rgba(255,255,255,.16); }
.sz-pakete > div:last-child { border-bottom: 1px solid rgba(255,255,255,.16); }
.sz-pakete dt { font: 400 21px/1 var(--anzeige); letter-spacing: .06em; text-transform: uppercase; color: #fff; }
.sz-pakete dd { margin: 0; font-size: 14px; line-height: 1.45; color: rgba(255,255,255,.86); }
.sz-pakete dd i { font: 400 18px/1 var(--anzeige); font-style: normal; color: var(--sz-rot); margin: 0 7px; }
.sz-hinweis { margin: 2px 0 0; font-size: 14px; line-height: 1.4; color: rgba(255,255,255,.86); }
.sz-hinweis b { color: var(--sz-rot); }
.sz-knoepfe3 { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.sz-knoepfe3 .knopf { min-height: 48px; padding: 0 24px; }
.knopf.sz-rot { background: var(--sz-rot); border-color: var(--sz-rot); color: #fff; }
.knopf.sz-rot:hover { background: #fff; border-color: #fff; color: #000; }
.knopf.sz-rahmen3 { background: transparent; border-color: rgba(255,255,255,.55); color: #fff; }
.knopf.sz-rahmen3:hover { background: #fff; color: #000; }
.sz-fuss3 { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 2px 0 0; font-size: 12px; color: rgba(255,255,255,.6); }

/* Angebote unter der Bühne */
.sz-band3 { background: #000; color: #fff; padding: clamp(56px, 7vw, 104px) 0; border-top: 1px solid rgba(255,255,255,.12); }
.sz-band3 h2 { color: #fff; font-size: clamp(52px, 6vw, 92px); margin: 14px 0 0; }
.sz-band3-raster { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 88px); margin-top: clamp(28px, 4vw, 48px); }
.sz-band3-raster h3 { margin: 0 0 6px; font: 400 26px/1 var(--anzeige); letter-spacing: .04em; text-transform: uppercase; color: #fff; }
.sz-band3-raster h3 span { color: var(--sz-rot); }
.sz-band3 .sz-pakete dd { font-size: 15px; }
.sz-weitere > div { grid-template-columns: minmax(150px, 46%) 1fr; }
.sz-weitere dt { font-size: 19px; line-height: 1.05; }
.sz-band3 .sz-hinweis { margin-top: 14px; }
.sz-band3 .sz-fuss3 { margin-top: 32px; }

/* Leiste, Kacheln, Produktseite, Warenkorb: Schwarz mit feinem Rot, nichts Klobiges */
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-leiste { background: #000; color: rgba(255,255,255,.9); font-size: 13px; }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-leiste .wrap { min-height: 42px; gap: 16px; }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-leiste b { font-size: 22px; color: var(--sz-rot); }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-leiste a { color: #fff; text-decoration: underline; text-decoration-color: var(--sz-rot); text-decoration-thickness: 2px; text-underline-offset: 5px; }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-abzeichen { background: #000; padding: 9px 14px; gap: 2px 10px; }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-abzeichen b { font-size: 18px; color: var(--sz-rot); }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-abzeichen .sz-kurz { color: #fff; font-size: 12.5px; font-weight: 700; }
html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-abzeichen .sz-entwurf { color: rgba(255,255,255,.7); }
.sz-bonus3, .sz-korb3 { display: grid; gap: 10px; margin-top: 16px; padding: 20px 22px; border-radius: 16px; background: #000; color: #fff; }
.sz-bonus3 .sz-titel3, .sz-korb3 .sz-titel3 { font-size: 30px; }
.sz-bonus3 .sz-pakete dt { font-size: 18px; }
.sz-bonus3 .sz-pakete > div { grid-template-columns: 74px 1fr; padding: 8px 0; }
.sz-bonus3 .sz-fuss3 { font-size: 11.5px; }
.sz-bonus3 > .sz-entwurf, .sz-korb3 > .sz-entwurf { justify-self: start; color: rgba(255,255,255,.7); }
.sz-text3 { margin: 0; font-size: 15px; color: rgba(255,255,255,.86); }
.sz-korb3 { margin: 6px 0 20px; }
.sz-korb3 ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: 14px; color: rgba(255,255,255,.86); }
.sz-korb3 li b { color: #fff; }

@media (max-width: 860px) { .sz-band3-raster { grid-template-columns: 1fr; } }
@media (max-width: 720px) {
  html:is([data-saison="bf-e"], [data-saison="bf-f"]) .st-buehne .sz-worte { left: 16px; right: 16px; top: 18px; width: auto; height: auto; }
  html[data-saison="bf-e"] .sz-rahmen { display: block; left: 8px; top: 8px; }
  .sz-frei { justify-self: stretch; width: auto; margin: 0 16px 20px; gap: 10px; }
  .sz-titel3 { font-size: 30px; }
  .sz-pakete > div { grid-template-columns: 72px 1fr; gap: 10px; padding: 7px 0; }
  .sz-pakete dt { font-size: 18px; }
  .sz-pakete dd { font-size: 13px; }
  .sz-pakete dd i { margin: 0 5px; }
  .sz-hinweis { font-size: 13px; }
  .sz-knoepfe3 { display: grid; grid-template-columns: 1fr 1fr; margin-top: 4px; }
  .sz-knoepfe3 .knopf { min-height: 46px; padding: 0 10px; font-size: 14px; }
  .sz-weitere > div { grid-template-columns: 1fr; gap: 2px; }
  html:is([data-saison="bf-e"], [data-saison="bf-f"]) .sz-leiste b { font-size: 20px; }
}

/* ---------- F mit allen Angeboten (Joshua 08.11.: „prio hat imbody und model i“) ----------
   Links auf Schwarz: IMBODY Power S je Paket, gleich groß SPlan Model I by MIROXX, darunter kompakt Reformer, Freemotion, Stil-Fit.
   Unter der Bühne alle Aktionsgeräte als Kacheln. */
html[data-saison="bf-f"] .st-buehne .sz-worte { left: 38%; width: 57%; top: 6%; height: 80%; }
html[data-saison="bf-f"] .sz-frei { width: clamp(380px, 30vw, 480px); gap: 12px; }
.sz-imbody, .sz-modeli { display: grid; gap: 4px; }
.sz-modeli { margin-top: 10px; }
.sz-titel3 span { color: var(--sz-rot); }
.sz-by { display: inline-flex; align-items: center; gap: 6px; vertical-align: middle; margin-left: 4px; padding: 5px 10px; border-radius: 999px; background: #fff;
  color: var(--anth); font: 600 12px/1 var(--schrift); letter-spacing: 0; text-transform: none; }
.sz-by img { display: block; height: 12px; width: auto; }
.sz-pakete dd small { font-size: 12px; color: rgba(255,255,255,.62); white-space: nowrap; }
.sz-kompakt { margin-top: 8px; padding-top: 12px; border-top: 1px solid var(--sz-rot); }
.sz-klein3 { margin: 0 0 6px; font: 800 11px/1.2 var(--schrift); letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.62); }
.sz-kompakt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 14px; font-weight: 700; color: #fff; }
.sz-kompakt li::before { content: "+"; color: var(--sz-rot); font: 400 18px/1 var(--anzeige); margin-right: 6px; }
.sz-raster3 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 28px; }
.sz-band3 > .wrap > .sz-text3 { margin-top: 10px; }
.sz-raster3 a.pk { background: #fff; }
@media (max-width: 1100px) { .sz-raster3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 720px) {
  html[data-saison="bf-f"] .st-buehne .sz-worte { left: 16px; right: 16px; top: 16px; width: auto; }
  html[data-saison="bf-f"] .sz-frei { width: auto; align-self: start; margin-bottom: 24px; }
  .sz-modeli { margin-top: 6px; }
  .sz-by { padding: 4px 8px; font-size: 11px; }
  .sz-kompakt ul { display: grid; gap: 4px; font-size: 13px; }
  /* Alle Angebote als Wischleiste */
  .sz-raster3 { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 22px calc(-1 * var(--rand)) 0; padding: 0 var(--rand) 8px; }
  .sz-raster3 a.pk { flex: 0 0 74%; scroll-snap-align: start; }
}

/* Handy: Boxen nie breiter als ihr Rahmen, lange Hinweise umbrechen (Seitenprüfer 09.11.) */
.sz-bonus3, .sz-korb3 { grid-template-columns: minmax(0, 1fr); }
.sz-pakete > div > * { min-width: 0; }
.sz-pakete dd { overflow-wrap: break-word; }
@media (max-width: 600px) { .sz-pakete dd small { white-space: normal; } }
/* Tablet und kleiner Laptop (721–1100 px): Angebotsliste links, Schriftzug rechts daneben statt darunter (Seitenprüfer 09.11.) */
@media (min-width: 721px) and (max-width: 1100px) {
  html[data-saison="bf-f"] .st-buehne .sz-worte { left: 50%; width: 46%; }
  html[data-saison="bf-f"] .sz-frei { width: min(43vw, 440px); margin-left: 4%; }
}

/* Zugaben als Bild (Joshua 09.11.): schwarzes Band unten im ersten Produktbild und auf den Kacheln, echte Produktfotos auf Weiß,
   großes „+“ und „Gratis“ im BF-Rot. Eigene Bildmaße, damit die Regeln für das Produktbild (100 %) nicht greifen. */
.pk .bild { position: relative; }
.zb { position: absolute; left: 14px; bottom: 14px; z-index: 3; display: flex; align-items: center; gap: 10px; max-width: calc(100% - 28px);
  padding: 10px 16px 10px 12px; border-radius: 16px; background: #000; color: #fff; pointer-events: none; }
.zb[hidden] { display: none; }
.zb-plus { font: 400 46px/.8 var(--anzeige); color: var(--sz-rot, #E4252B); margin-right: 2px; }
.zb-teil { display: grid; justify-items: center; gap: 4px; min-width: 0; }
.galerie .haupt .zb img, .pk .bild .zb img, .zb-symbol { display: block; width: 72px; height: 72px; padding: 4px; border-radius: 12px; background: #fff;
  object-fit: contain; transform: none; opacity: 1; }
.zb-symbol { display: grid; place-items: center; color: #1D1D1D; }
.zb-symbol svg { width: 60%; height: 60%; }
.zb-teil small { font: 700 11px/1.15 var(--schrift); color: rgba(255,255,255,.88); text-align: center; max-width: 84px; }
.zb-mehr { font: 400 26px/1 var(--anzeige); color: #fff; }
.zb-gratis { display: grid; margin-left: 4px; font: 400 40px/.85 var(--anzeige); letter-spacing: .02em; text-transform: uppercase; color: var(--sz-rot, #E4252B); }
.zb-gratis small { font: 700 11px/1.2 var(--schrift); letter-spacing: 0; text-transform: none; color: rgba(255,255,255,.8); margin-top: 4px; }
/* Kacheln: kleiner, ohne Bildunterschrift */
.zb.zb-klein { left: 8px; bottom: 8px; max-width: calc(100% - 16px); gap: 5px; padding: 6px 10px 6px 8px; border-radius: 12px; flex-wrap: nowrap; }
.zb-klein .zb-plus { font-size: 30px; }
.pk .bild .zb-klein img, .zb-klein .zb-symbol { width: 36px; height: 36px; padding: 2px; border-radius: 8px; }
.zb-klein .zb-mehr { font-size: 20px; }
.zb-klein .zb-teil small { display: none; }
.zb-klein .zb-gratis { font-size: 24px; }
.zb-klein .zb-gratis small { font-size: 10px; margin-top: 2px; }
@media (max-width: 600px) {
  .zb { left: 8px; bottom: 8px; max-width: calc(100% - 16px); gap: 6px; padding: 7px 10px 7px 8px; border-radius: 12px; }
  .zb-plus { font-size: 32px; }
  .galerie .haupt .zb img, .zb-symbol { width: 50px; height: 50px; border-radius: 9px; padding: 3px; }
  .zb-teil small { font-size: 9.5px; max-width: 58px; }
  .zb-gratis { font-size: 28px; }
  .zb-gratis small { font-size: 9.5px; }
  .pk .bild .zb-klein img, .zb-klein .zb-symbol { width: 32px; height: 32px; }
  .zb-klein .zb-plus { font-size: 24px; }
  .zb-klein .zb-gratis { font-size: 20px; }
}

/* Preise der Ausstattung erst zeigen, wenn die Saison-Regeln greifen (sonst kurz „+ 79 €“ statt „gratis (Zugabe)“); spätestens nach 1,5 s */
html[data-saison]:not([data-saison-bereit]) #kaufbox .plus, html[data-saison]:not([data-saison-bereit]) [data-fv-saison-aufbau] { visibility: hidden; animation: sz-zeigen 0s 1.5s forwards; }
@keyframes sz-zeigen { to { visibility: visible; } }
