/* Snäxx, Handy-Fassung (10/2026).
   Wird in jeder Seite mit media="(max-width: 900px)" NACH styles.css und nach dem
   seiteneigenen <style> geladen. Der Desktop wendet diese Datei gar nicht an,
   alles hier gilt nur für Handy und kleines Tablet.
   Aufbau: 1 Grundlagen · 2 Header und Menü · 3 Feste Leiste · 4 Startseite ·
   5 Wischreihen · 6 Unterseiten · 7 Formulare · 8 Cookie-Hinweis · 9 Footer */

/* ── 1 Grundlagen ── */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
a, button, summary, label, input, select, textarea, .genre-chip, .topic-card, .show-card {
  -webkit-tap-highlight-color: transparent;
}
a, button, .genre-chip, .topic-card { touch-action: manipulation; }
[id] { scroll-margin-top: 76px; }

.btn { min-height: 48px; transition: transform 0.12s ease, filter 0.12s ease; }
.btn:active { transform: scale(0.97); filter: brightness(0.94); }
.text-link { min-height: 44px; }
.text-link:active { color: var(--accent); }
.poster-tile, .show-card, .blog-card, .fb-card, .topic-card, .catalog-lead-poster, .genre-chip, .quote-card {
  transition: transform 0.15s ease, opacity 0.15s ease;
}
a.poster-tile:active, a.show-card:active, a.blog-card:active, .topic-card:active, a.quote-card:active {
  transform: scale(0.98); opacity: 0.9;
}
.genre-chip:active { transform: scale(0.96); }
@media (prefers-reduced-motion: reduce) {
  .btn, .poster-tile, .show-card, .blog-card, .fb-card, .topic-card, .genre-chip, .mbar { transition: none !important; }
}

/* ── 2 Header und Menü ── */
.site-header .wrap { height: 60px; padding: 0 14px 0 20px; }
.site-header .brand { min-height: 44px; }
.site-header .brand img { height: 28px; }
.nav-toggle { width: 44px; height: 44px; }

html.m-menu-open, html.m-menu-open body { overflow: hidden; }
.site-header.open { background: #0a1526; }
/* Der Kasten rechts löst sich auf: Knopf nach oben, Sprachwahl nach unten */
.site-header.open .header-right { display: contents; }
.site-header.open .header-right > .btn-primary {
  position: fixed; top: 76px; left: 20px; right: 20px; z-index: 82;
  min-height: 52px; padding: 0 24px; font-size: 16px; text-align: center;
}
.site-header.open .nav-links {
  top: 60px; bottom: 0; gap: 0;
  padding: 84px 20px calc(150px + var(--consent-h, 0px) + env(safe-area-inset-bottom));
  overscroll-behavior: contain;
}
.site-header.open .nav-links a {
  display: flex; align-items: center; min-height: 58px; padding: 0 4px;
  font-size: 21px; font-weight: 600; letter-spacing: -0.01em; white-space: normal;
}
.site-header.open .nav-links a:active { color: var(--accent); }
.site-header.open .lang-switcher {
  position: fixed; left: 0; right: 0; bottom: var(--consent-h, 0px); z-index: 82;
  padding: 14px 20px calc(14px + env(safe-area-inset-bottom));
  background: #0a1526; border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.site-header.open .lang-btn { display: none; }
.site-header.open .lang-menu {
  position: static; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px;
  min-width: 0; padding: 0; background: none; border: none; border-radius: 0; box-shadow: none;
  backdrop-filter: none; -webkit-backdrop-filter: none;
}
.site-header.open .lang-menu a {
  display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 4px;
  border-radius: 12px; background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 15px; color: #fff;
}
.site-header.open .lang-menu a.active {
  color: var(--accent); font-weight: 600; border-color: rgba(255, 141, 0, 0.7); background: rgba(255, 141, 0, 0.1);
}

/* ── 3 Feste Leiste unten ── */
.mbar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 45;
  display: flex; align-items: center; gap: 14px;
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
  background: rgba(9, 17, 33, 0.97); border-top: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 -12px 30px rgba(0, 0, 0, 0.35);
  transform: translateY(110%); visibility: hidden;
  transition: transform 0.26s ease, visibility 0s linear 0.26s;
}
.mbar[hidden] { display: none; }
.mbar.is-on { transform: none; visibility: visible; transition: transform 0.26s ease, visibility 0s; }
.mbar-cd { flex: none; display: flex; flex-direction: column; font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; line-height: 1.2; color: var(--text-secondary); }
.mbar-cd:empty { display: none; }
.mbar-cd b { font-size: 17px; font-weight: 700; letter-spacing: -0.01em; text-transform: none; color: #fff; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mbar .btn { flex: 1; min-width: 0; min-height: 48px; padding: 6px 16px; font-size: 15px; line-height: 1.15; white-space: normal; text-align: center; }
html.has-mbar footer { padding-bottom: calc(32px + 72px + env(safe-area-inset-bottom)); }

@media (max-width: 700px) {
  .wrap { padding: 0 20px; }
  section { padding: 46px 0; }

  /* ── 4 Startseite ── */
  .hero-home { padding: 22px 0 40px; }
  .hero-home .wrap { gap: 30px; }
  .hero-home .eyebrow { margin-bottom: 10px; padding-bottom: 8px; }
  .hero-home .hero-launch { font-size: 30px; margin-bottom: 14px; }
  /* Countdown als vier gleich breite Felder über die ganze Breite */
  .hero-countdown { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0 0 22px; }
  .hero-countdown[hidden] { display: none; }
  .hero-countdown .cd-unit,
  .hero-countdown .cd-unit:first-child {
    align-items: center; padding: 11px 0 9px; border-left: none; border-radius: 14px;
    background: rgba(255, 255, 255, 0.05); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
  }
  .hero-countdown .cd-unit b { font-size: 27px; font-weight: 700; min-width: 0; }
  .hero-countdown .cd-unit i { font-size: 10.5px; margin-top: 3px; }
  .hero-home h1 { font-size: 38px; margin-bottom: 12px; }
  .hero-home p.lead { font-size: 17px; line-height: 1.5; margin-bottom: 20px; }
  .hero-home .lead-more { display: none; }
  .hero-home .hero-ctas { margin-bottom: 12px; }
  .hero-home .hero-ctas .btn { min-height: 54px; font-size: 17px; }
  .hero-home .hero-ctas .text-link { display: none; }
  .hero-home .hero-note { font-size: 13.5px; line-height: 1.45; text-align: center; }
  .hero-home .phone-frame { width: 212px; }
  .hero-home .hero-visual { gap: 6px; }
  .screen-arrow { display: none; }
  .screen-dot { width: 44px; height: 44px; }

  .head-left { margin-bottom: 22px; }
  .head-left h2 { font-size: 28px; }
  .head-left p { font-size: 16px; line-height: 1.55; margin-top: 10px; }

  .why-tile { padding: 22px 20px 24px; border-radius: 22px; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .why-icon { width: 42px; height: 42px; margin-bottom: 16px; }
  .why-tile h3 { font-size: 20px; }
  .why-tile p { font-size: 15.5px; }

  /* Katalog: eine Wischreihe mit allen fünf Postern, das erste doppelt vorhandene
     Poster (m-only) ersetzt hier den großen Aufmacher des Desktops */
  .catalog-row { display: block; }
  .catalog-lead-poster, .catalog-lead-info { display: none; }
  .poster-tile.m-only[hidden] { display: block !important; }
  .poster-tile .pt-genre { margin-top: 10px; }
  .poster-tile .pt-title { font-size: 16px; }
  .catalog-more { margin-top: 10px; }

  /* Studio: Foto zuerst und flacher, Fakten als drei Spalten */
  .studio-row { gap: 22px; }
  .studio-photo { order: -1; }
  .studio-photo img { aspect-ratio: 16 / 9; border-radius: 20px; box-shadow: 0 16px 34px rgba(0, 0, 0, 0.4); }
  .studio-photo figcaption { margin-top: 8px; font-size: 12px; }
  .studio-copy .eyebrow { margin-bottom: 14px; }
  .studio-copy h2 { font-size: 28px; margin-bottom: 12px; }
  .studio-copy > p { font-size: 16px; line-height: 1.55; }
  .studio-facts { display: grid; grid-template-columns: auto auto 1fr; gap: 0; margin-top: 20px; padding-top: 18px; }
  .studio-facts li { padding: 0 14px; }
  .studio-facts strong { font-size: 20px; }
  .studio-facts span { font-size: 12.5px; }
  .studio-copy > p.studio-links { flex-direction: column; gap: 0; margin-top: 12px; }

  /* In drei Schritten: Ziffer links, Text rechts */
  .how-row li, .how-row li:last-child {
    display: grid; grid-template-columns: 34px minmax(0, 1fr); column-gap: 14px; padding: 16px 0;
  }
  .how-n {
    grid-row: 1 / 3; width: 34px; height: 34px; margin: 0; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 15px; font-weight: 700; background: rgba(255, 141, 0, 0.12); box-shadow: inset 0 0 0 1px rgba(255, 141, 0, 0.3);
  }
  .how-row h3 { font-size: 18px; margin: 5px 0 4px; }
  .how-row p { font-size: 15.5px; line-height: 1.5; }

  /* Warteliste */
  #waitlist { padding: 36px 0 52px; }
  .waitlist { padding: 28px 18px 24px; border-radius: 24px; }
  .waitlist-gift { margin-bottom: 14px; }
  .waitlist h2 { font-size: 26px; line-height: 1.15; margin-bottom: 10px; }
  .waitlist p { font-size: 15.5px; line-height: 1.5; margin-bottom: 20px; }
  .waitlist-row { gap: 10px; }
  .waitlist-row input { min-height: 54px; padding: 0 20px; }
  .waitlist-row .btn { min-height: 54px; font-size: 17px; }
  .waitlist-consent { gap: 12px; font-size: 13.5px; line-height: 1.45; padding: 6px 0; }
  .waitlist-consent input[type="checkbox"] { width: 24px; height: 24px; margin: 0; }
  .waitlist-fine { font-size: 12.5px !important; margin-top: 12px !important; }
  .waitlist-status { margin: 10px 0 0; min-height: 0; font-size: 15px; }
  .waitlist-status:empty { display: none; }
  .waitlist-status.success, .waitlist-status.error {
    padding: 12px 14px; border-radius: 12px; line-height: 1.4;
  }
  .waitlist-status.success { background: rgba(74, 222, 128, 0.1); }
  .waitlist-status.error { background: rgba(248, 113, 113, 0.1); }

  /* ── 5 Wischreihen: waagerecht, rastend, die nächste Kachel schaut an ── */
  .why-tiles, .poster-row, .shows-grid, .fb-cards.fb-cast, .fb-gallery, .fb-merch, .mission-grid, .genre-filter {
    display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 12px;
    grid-template-columns: none; grid-template-rows: none;
    max-width: none; margin-left: -20px; margin-right: -20px; padding: 4px 20px 10px;
    overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory; scroll-padding: 0 20px;
    -webkit-overflow-scrolling: touch; scrollbar-width: none;
  }
  .why-tiles::-webkit-scrollbar, .poster-row::-webkit-scrollbar, .shows-grid::-webkit-scrollbar,
  .fb-cards.fb-cast::-webkit-scrollbar, .fb-gallery::-webkit-scrollbar, .fb-merch::-webkit-scrollbar,
  .mission-grid::-webkit-scrollbar, .genre-filter::-webkit-scrollbar { display: none; }
  .why-tiles > *, .poster-row > *, .shows-grid > *, .fb-cards.fb-cast > *, .fb-gallery > *, .fb-merch > *, .mission-grid > * {
    flex: 0 0 78%; min-width: 0; scroll-snap-align: start;
  }
  .poster-row > *, .shows-grid > * { flex-basis: 74%; }
  .fb-cards.fb-cast > * { flex-basis: 68%; }
  .fb-gallery > * { flex-basis: 84%; }
  .fb-merch > * { flex-basis: 64%; }
  .poster-row { gap: 14px; }

  /* ── 6 Unterseiten ── */
  .page-hero, .blog-hero { padding: 30px 20px 30px; }
  .page-hero h1, .blog-hero h1 { font-size: 32px; line-height: 1.12; margin-bottom: 12px; }
  .page-hero p, .blog-hero p { font-size: 16px; line-height: 1.55; }
  .page-hero .eyebrow, .blog-hero .eyebrow { margin-bottom: 16px; }
  .section-head { margin-bottom: 24px; }
  .section-head h2 { font-size: 28px; line-height: 1.15; margin-bottom: 10px; }
  .section-head p { font-size: 16px; line-height: 1.55; margin: 0; }
  .section-head .eyebrow { margin-bottom: 16px; }
  .feature-card { padding: 22px 20px; }
  .feature-card p { font-size: 15px; }

  /* Serien */
  .genre-filter { gap: 8px; margin-top: 22px; scroll-snap-type: none; }
  .genre-chip { flex: none; display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; font-size: 15px; }
  .show-feature {
    grid-template-columns: 128px minmax(0, 1fr); gap: 0 16px; align-items: center; margin: 4px 0 48px;
  }
  .show-feature-visual { grid-column: 1; grid-row: 1 / 3; border-radius: 16px; }
  .show-feature-visual img { aspect-ratio: 2 / 3; object-fit: cover; }
  .show-feature-info { display: contents; }
  .show-feature-info .tag { grid-column: 2; grid-row: 1; align-self: end; justify-self: start; margin-bottom: 10px; border-radius: 12px; line-height: 1.3; }
  .show-feature-info h2 { grid-column: 2; grid-row: 2; align-self: start; font-size: 26px; line-height: 1.12; margin: 0; }
  .show-feature-info p { grid-column: 1 / -1; font-size: 16px; line-height: 1.6; max-width: none; margin: 18px 0 18px; }
  .show-meta { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; margin-bottom: 22px; }
  .show-feature-info .btn { grid-column: 1 / -1; min-height: 52px; font-size: 16px; }
  .show-card-body { padding: 16px; }
  .show-card-body h3 { font-size: 20px; }
  .show-card-body p { font-size: 13.5px; }
  .show-card-body .ep-count { font-size: 12.5px; }
  .coming-soon-banner { padding: 30px 20px; margin: 44px 0 0; }
  .coming-soon-banner h2 { font-size: 24px; }
  .coming-soon-banner p { font-size: 15.5px; line-height: 1.5; margin-bottom: 20px; }
  .coming-soon-banner .btn, .fb-cta .btn, .press-cta .btn, .article-cta .btn { width: 100%; min-height: 52px; font-size: 16px; }
  main > .wrap:last-child, main > section.wrap:last-child { padding-bottom: 52px; }

  /* Fän-Base */
  .fb-section { padding: 34px 0 6px; }
  .fb-feature { border-radius: 22px; margin-bottom: 26px; }
  .fb-feature-img { min-height: 0; aspect-ratio: 16 / 10; }
  .fb-feature-body { padding: 22px 20px 24px; }
  .fb-feature-body h3 { font-size: 23px; line-height: 1.15; margin-bottom: 10px; }
  .fb-feature-body p { font-size: 15.5px; line-height: 1.6; margin-bottom: 18px; }
  .fb-feature-body .btn { min-height: 52px; font-size: 16px; }
  .fb-cast-head { margin-bottom: 8px; }
  .fb-cast .fb-card .fb-body { padding: 14px 16px 16px; }
  .fb-cast .fb-card p { font-size: 13px; }
  .fb-gallery figure { aspect-ratio: 4 / 3; }
  .fb-gallery figure:first-child { grid-row: auto; }
  .fb-merch-card { padding: 22px 18px; }
  .fb-merch-card p { font-size: 15px; }
  .fb-cta { padding: 30px 20px; margin: 30px 0 0; }
  .fb-cta h2 { font-size: 24px; }
  .fb-cta p { font-size: 15.5px; line-height: 1.5; margin-bottom: 20px; }

  /* Über uns */
  .story { gap: 24px; margin-bottom: 52px; }
  .story h2 { font-size: 28px; line-height: 1.15; margin-bottom: 12px; }
  .story p { font-size: 16px; line-height: 1.6; }
  .story-visual { max-width: 230px; margin: 0 auto; border-radius: 18px; }
  .mission-grid { margin-bottom: 48px; }
  .values { margin-bottom: 44px; }
  .value-row { padding: 18px 0; gap: 6px; }
  .value-row h3 { font-size: 18px; }
  .value-row p { font-size: 15.5px; line-height: 1.55; }
  .bfs-note { padding: 26px 20px; margin-bottom: 0; }
  .bfs-note h2 { font-size: 22px; }
  .bfs-note p { font-size: 15.5px; line-height: 1.55; }
  .bfs-note .btn { width: 100%; }

  /* Blog: der neueste Beitrag groß, alle weiteren als kompakte Liste */
  .blog-grid { gap: 12px; padding-bottom: 52px; }
  .blog-card { border-radius: 18px; }
  .blog-card:not(:first-child) { flex-direction: row; align-items: stretch; }
  .blog-card:not(:first-child) .thumb { flex: 0 0 104px; aspect-ratio: auto; min-height: 104px; }
  .blog-card:not(:first-child) .thumb span,
  .blog-card:not(:first-child) .thumb::after,
  .blog-card:not(:first-child) p,
  .blog-card:not(:first-child) .read { display: none; }
  .blog-card:not(:first-child) .body { padding: 12px 14px; justify-content: center; min-width: 0; }
  .blog-card:not(:first-child) .meta { font-size: 12px; margin-bottom: 5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .blog-card:not(:first-child) h2 {
    font-size: 16px; line-height: 1.28; margin: 0;
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
  }
  .blog-card:first-child .body { padding: 18px 18px 20px; }
  .blog-card:first-child h2 { font-size: 21px; }
  .blog-card:first-child p { font-size: 15px; }
  .blog-card:first-child .read { font-size: 15px; }

  /* Artikel */
  .article-wrap { padding: 22px 20px 52px; }
  .article-back { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 10px; font-size: 15px; }
  .article-wrap h1 { font-size: 29px; line-height: 1.14; }
  .article-byline { margin-bottom: 20px; }
  .article-hero { margin-bottom: 26px; }
  .article-hero-img { border-radius: 16px; }
  .article-body h2 { font-size: 23px; margin: 34px 0 12px; }
  .article-body blockquote { font-size: 18px; padding: 16px 18px; }
  .article-cta { padding: 26px 20px; margin-top: 36px; }
  .article-sources { font-size: 14px; }
  .article-sources a { display: inline-block; padding: 4px 0; }

  /* Creator */
  .models-grid { gap: 14px; margin-bottom: 28px; }
  .model-card { padding: 24px 20px; }
  .model-card h3 { font-size: 22px; }
  .model-card > p { font-size: 15.5px; line-height: 1.6; }
  .model-card li { font-size: 15px; }
  .format-band, .funding-note { padding: 26px 20px; margin-bottom: 48px; gap: 20px; }
  .format-band h2 { font-size: 24px; }
  .guidelines { gap: 28px; margin-bottom: 48px; }
  .guidelines h2 { font-size: 28px; line-height: 1.15; margin-bottom: 12px; }
  .apply-box { padding: 26px 18px; border-radius: 24px; }

  /* Kontakt */
  .contact-layout { gap: 22px; margin-bottom: 40px; }
  .contact-topics { gap: 10px; }
  .topic-card { padding: 16px 18px; }
  .topic-card p { font-size: 15px; }
  .contact-box > p { font-size: 15.5px; }
  .contact-box { padding: 26px 18px; border-radius: 24px; }
  .address-note { margin-bottom: 0; font-size: 15px; }

  /* Presse */
  .facts-grid { gap: 12px; margin-bottom: 48px; }
  .fact-card { padding: 20px 14px; }
  .onepager { gap: 28px; margin-bottom: 48px; }
  .onepager h2 { font-size: 28px; line-height: 1.15; }
  .onepager p { font-size: 16px; line-height: 1.65; }
  .download-box { padding: 24px 20px; }
  .download-item { min-height: 56px; }
  .download-item a { display: inline-flex; align-items: center; justify-content: flex-end; min-width: 48px; min-height: 44px; padding: 0 2px; }
  .press-cta { padding: 30px 20px; margin-bottom: 0; }
  .press-cta h2 { font-size: 24px; }
  .press-context { margin-bottom: 44px; font-size: 15px; }
  .press-photo figcaption a { display: inline-flex; align-items: center; min-height: 44px; }
  .photo-credit { margin-bottom: 48px; }
  .press-quotes .quote-card, .quote-card { padding: 22px 20px; }

  /* RE:FORMAT */
  .rf-hero-grid { margin-bottom: 34px; }
  .rf-hero-actions .btn { flex: 1 1 100%; min-height: 52px; }
  .facts-grid.rf-facts, .rf-two { margin-bottom: 48px; }
  .rf-two { gap: 14px; }
  .rf-card { padding: 24px 20px; }
  .rf-card p, .rf-note p, .rf-cross p, .rf-beats p { font-size: 15.5px; }
  .rf-deliver p { font-size: 15px; }
  .rf-cross { margin-top: 48px; padding: 24px 20px; }
  .rf-cross .btn { width: 100%; }
  .rf-tl-lab { width: 96px; }
  .beta .small, .inv .code-hint { font-size: 15px; }

  /* Rechtsseiten, Kündigung, Gewinnspiel, Beta und kleine Systemseiten:
     nur Abstände und Umbruch, kein Wort am Inhalt */
  .legal-wrap, .gw-wrap { padding: 28px 20px 56px; }
  .legal-body { overflow-wrap: break-word; }
  .legal-body h1 { font-size: 28px; line-height: 1.15; }
  .legal-body p, .legal-body li { font-size: 16px; line-height: 1.65; }
  .legal-body table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .legal-body a { overflow-wrap: anywhere; }
  .back-link { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 16px; font-size: 15px; }
  .draft-banner { margin-bottom: 26px; padding: 14px 16px; }
  .gw-hero { margin-bottom: 30px; }
  .gw-card { padding: 22px 18px; }
  .gw-terms p, .gw-terms li { font-size: 15px; }
  .beta, .del { padding: 36px 20px 64px; }
  .nl, .inv, .nf { padding: 48px 20px 72px; }
  .nl .ctas .btn, .inv .inv-ctas .btn, .nf .nf-ctas .btn { width: 100%; }
  .nl-link button { min-height: 48px; }
  .kd-actions .btn { width: 100%; }
  .kd-radios label { min-height: 44px; }
  .kd-radios input[type="radio"] { width: 22px; height: 22px; flex: none; }

  /* ── 7 Formulare: 16 px Schrift, damit iOS beim Antippen nicht hineinzoomt ── */
  input:not([type="checkbox"]):not([type="radio"]), select, textarea { font-size: 16px !important; }
  .form-field label { font-size: 14.5px; }
  .form-field input, .form-field select { min-height: 52px; }
  .checkbox-field { gap: 12px; }
  .checkbox-field input { width: 24px; height: 24px; margin-top: 0; }
  .checkbox-field label { font-size: 14.5px; }
  .apply-box .btn, .contact-box .btn { min-height: 54px; font-size: 17px; }
  .form-status:empty { display: none; }

  /* ── 9 Footer ── */
  footer { padding: 34px 0 28px; }
  .footer-top { gap: 10px; margin-bottom: 18px; align-items: flex-start; text-align: left; }
  .footer-top .brand { min-height: 44px; }
  .footer-links { max-width: none; text-align: left; }
  .footer-made { text-align: left; }
  .footer-links a { display: flex; align-items: center; min-height: 46px; padding: 6px 4px; }
  .footer-made { font-size: 13px; }
  .footer-made a { display: inline-block; padding: 12px 0; }
}

/* ── 8 Cookie-Hinweis: beide Knöpfe gleich groß und mit dem Daumen gut zu treffen ── */
@media (max-width: 700px) {
  .consent-actions .btn,
  .consent-actions .btn-ghost { min-height: 44px; font-size: 13px; }
  .consent-inner a { display: inline-block; padding: 2px 0; }
}

/* „Mehr lesen“: lange Erklärtexte werden auf dem Handy gekürzt (mobile.js) */
.m-clamp { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
.m-more {
  display: inline-flex; align-items: center; min-height: 44px; margin: -6px 0 6px; padding: 0;
  background: none; border: none; font: inherit; font-size: 15px; font-weight: 600; color: var(--accent); cursor: pointer;
}
.fb-feature-body .m-clamp, .story .m-clamp, .format-band .m-clamp { margin-bottom: 0; }
