/* Gemeinsame Maße stammen aus der Hauptplatte. Keine neue Gestaltungsebene. */
:root {
  -webkit-tap-highlight-color: transparent;
  --bb-heading-leading: 1.12;
  --bb-heading-gap: 16px;
  --track-mark-size: clamp(3rem,4.667vw,5rem);
  --track-mark-bottom: clamp(20px,3vw,44px);
  --track-mark-gap: clamp(28px,2.6vw,42px);
  --track-mark-right: clamp(28px,4vw,72px);
  --track-mark-color: rgba(241,238,228,.055);
}
/* Antippen bleibt ruhig; der sichtbare Tastaturfokus bleibt erhalten. */
button:focus:not(:focus-visible),a:focus:not(:focus-visible),[role="button"]:focus:not(:focus-visible) { outline: none; }
.human-check[hidden] { display: none; }
.site-footer::after,.page-footer::after,.tour-page .tour-section::after,
.kat::after,.legal-page .legal-section::after,.footer-track-login {
  color: var(--track-mark-color);
  font-family: var(--display-font);
  font-size: var(--track-mark-size);
  font-weight: 400;
  font-synthesis: none;
  line-height: .82;
  letter-spacing: -.035em;
}
.site-footer::after,.page-footer::after,.footer-track-login {
  right: var(--track-mark-right);
  bottom: var(--track-mark-bottom);
}
#kontakt { padding-bottom: calc(var(--track-safe-zone) + clamp(60px,7vw,100px)); }
.media-block { border-top: 0; }
.media-block__head { border-bottom: 2px solid var(--acid); padding-bottom: var(--bb-heading-gap); }
/* Die Stempelschrift bleibt innerhalb ihrer Zeilen; Text und Linie folgen im Fluss. */
.merch-showcase__intro { padding-bottom: var(--bb-heading-gap); }
.merch-showcase__intro > div { display: grid; gap: var(--bb-heading-gap); min-width: 0; }
.merch-showcase__intro h3,.merch-showcase__intro p { margin: 0; }
.video-thumb--donnerkeil img { object-fit: cover; object-position: center 54%; }
.merch-shop-link,.tour-calendar-trigger,.tour-all-link,.tour-button,
.tour-button--secondary {
  border-color: var(--acid);
  color: var(--paper);
  background: rgba(5,5,5,.82);
  -webkit-tap-highlight-color: transparent;
}
.merch-shop-link:hover,.merch-shop-link:focus-visible,
.merch-shop-link:active,
.tour-calendar-trigger:hover,.tour-calendar-trigger:focus-visible,
.tour-calendar-trigger:active,
.tour-all-link:hover,.tour-all-link:focus-visible,
.tour-all-link:active,
.tour-button:hover,.tour-button:focus-visible,.tour-button:active,
.tour-button--secondary:hover,.tour-button--secondary:focus-visible,.tour-button--secondary:active {
  color: var(--ink);
  border-color: var(--acid);
  background: var(--acid);
  transform: none;
  outline: none;
}
/* Derselbe sichtbare Tastaturfokus auf Hauptseite und Tour-Unterseite. */
.merch-shop-link:focus-visible,.tour-calendar-trigger:focus-visible,
.tour-all-link:focus-visible,.tour-button:focus-visible,.tour-button--secondary:focus-visible {
  outline: 2px solid var(--acid);
  outline-offset: 3px;
}
.tour-calendar-glyph { font-variant-numeric: tabular-nums; flex: 0 0 28px; }
.tour-card__info:hover,.tour-card__close:hover { color: var(--acid); outline: none; }
.tour-card__info:focus-visible,.tour-card__close:focus-visible { outline: 2px solid var(--acid); outline-offset: 4px; }
.tour-page .tour-thumb::after { content: none; }
/* Bandlinks sind auch ohne Hover erkennbar, auf allen Konzertansichten. */
.tour-facts .tour-band-link {
  color: var(--paper);
  text-decoration: underline;
  text-decoration-color: var(--acid);
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
}
.tour-facts .tour-band-link::after {
  content: "\2197";
  display: inline-block;
  margin-inline-start: .28em;
  color: var(--acid);
  font-size: .8em;
  text-decoration: none;
}
.tour-facts .tour-band-link:hover,
.tour-facts .tour-band-link:active,
.tour-facts .tour-band-link:focus-visible { color: var(--acid); }
.tour-facts .tour-band-link:focus-visible {
  outline: 2px solid var(--acid);
  outline-offset: 3px;
}
.tour-feature__title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; line-height: var(--bb-heading-leading); }
.tour-page .tour-detail-columns { display: block; }
.tour-page .tour-detail-columns .tour-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.tour-page .tour-detail-columns .tour-facts > div:nth-child(n+3) { grid-column: 1/-1; }
.tour-page .tour-actions { flex-wrap: wrap; }
.tour-page .tour-actions .tour-button { min-width: min(200px,100%); min-height: 44px; padding: 12px 18px; }
.tour-page .tour-section::after { opacity: 1; margin-top: var(--track-mark-gap); }
.tour-page main { width: auto; max-width: none; margin: 0 0 0 clamp(390px,34vw,500px); padding: clamp(64px,6vw,92px) var(--panel-x) 96px; --tour-hero-gutter: var(--panel-x); }
.tour-page .tour-hero h1 { font-size: clamp(4.2rem,7.2vw,9.2rem); line-height: var(--bb-heading-leading); }
.legal-section { border: 0; background: transparent; overflow: visible; }
.tour-page .record-label,.legal-page .record-label { gap: 5px; font-synthesis: none; }
.tour-page .record-label span,.legal-page .record-label span {
  font: 400 10px/1.2 var(--display-font);
  letter-spacing: .08em;
}
.tour-page .record-label strong,.legal-page .record-label strong {
  font: 400 18px/.95 var(--display-font);
  letter-spacing: .08em;
  white-space: nowrap;
}
.legal-page .record-label strong { font-size: 14px; max-width: 110px; }
/* Merch: kleinere Auslage, größere Detailansicht, ohne geratene Maßtabelle. */
.kat { position: relative; padding-bottom: calc(var(--track-mark-size) + var(--track-mark-bottom) + var(--track-mark-gap)); }
.kat::after { content: attr(data-cut); position: absolute; right: calc(var(--track-mark-right) - var(--panel-x)); bottom: var(--track-mark-bottom); pointer-events: none; user-select: none; }
.kat > h2 { padding-bottom: var(--bb-heading-gap); border-bottom: 2px solid var(--acid); line-height: var(--bb-heading-leading); }
.kat > h2:focus { outline: none; }
.karte img { width: 66.6667%; margin-inline: auto; }
.karte .zeile { justify-content: center; text-align: center; }
#dlg { max-width: 1010px; max-height: calc(100dvh - 32px); }
#dlg .dlg { height: min(680px,calc(100dvh - 34px)); }
#dlg .detail-media { min-height: 0; }
#dlg .detail-media img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: contain; }
#dlg .inhalt { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: clamp(20px,3vw,32px); }
.disc-label { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; }
.disc-label small { font: 400 10px/1.2 var(--display-font); }
.disc-label strong { font: 400 18px/.95 var(--display-font); }
.footer-track-login { min-width: 0; min-height: 0; padding: 0; display: flex; align-items: baseline; }
.footer-track-login button { min-width: 0; min-height: 0; padding: 0; font: inherit; letter-spacing: inherit; line-height: inherit; cursor: default; outline: none; }
.footer-track-login button:hover,.footer-track-login button:focus-visible { color: inherit; background: none; outline: none; }
.band-login-dialog__head p { display: none; }
.band-login-dialog .btnzeile { display: grid; grid-template-columns: 1fr 1fr; }
.band-login-dialog .btn { font: 400 24px/1.2 Arial,sans-serif; }
.band-login-dialog .btn.ghost { color: var(--paper); border-color: var(--paper); }
.band-login-dialog__close { display: inline-flex; align-items: center; justify-content: center; }
.captcha-code img { display: block; width: 180px; max-width: 100%; height: auto; }
@media (min-width:981px) {
  body[data-view="1"] .wrap { padding-top: clamp(42px,5vw,72px); }
  .record-nav .track[data-terminal="bandseite"] { --y: 302px; }
  .tour-page .track:nth-child(1) { --y: 18px; }
  .tour-page .track:nth-child(2) { --y: 58px; }
  .tour-page .track[data-terminal="bandseite"] { --y: 302px; }
  .tour-page .track[data-terminal="tour-footer"] { --y: 382px; }
}
@media (max-width:980px) {
  .record-nav .track[data-terminal="bandseite"] { --y: 274px; }
}
@media (max-width:700px),(min-width:701px) and (max-width:980px) and (orientation:landscape) {
  .tour-page main,.legal-page main { margin: 0; padding-inline: var(--panel-x); }
}
@media (max-width:700px) {
  :root { --track-mark-size: clamp(5.35rem,24vw,8rem); --track-mark-right: 12px; --track-mark-bottom: 18px; --track-mark-gap: 28px; }
  .site-footer::after,.page-footer::after,.footer-track-login { right: 12px; }
  .tour-page .tour-hero h1 { font-size: clamp(3.3rem,13vw,5.6rem); }
  .tour-page .track:nth-child(1) { --y: -26px; }
  .tour-page .track:nth-child(2) { --y: 14px; }
  .tour-page .track[data-terminal="bandseite"] { --y: 222px; }
  .tour-page .track[data-terminal="tour-footer"] { --y: 302px; }
}
@media (max-width:620px) {
  #dlg .dlg { display: block; height: auto; max-height: calc(100dvh - 34px); overflow-y: auto; }
  #dlg .detail-media { height: min(58dvh,520px); }
  #dlg .inhalt { overflow: visible; }
  .tour-page .tour-detail-columns .tour-facts { grid-template-columns: 1fr; }
  .tour-page .tour-detail-columns .tour-facts > div { grid-column: 1; }
}

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.footer-track-login button { color: inherit; }
.legal-page main { width: auto; max-width: none; margin: 0 0 0 clamp(390px,34vw,500px); padding: clamp(64px,6vw,92px) var(--panel-x) 96px; }
.legal-page .legal-section { padding-inline: 0; padding-bottom: calc(var(--track-mark-size) + var(--track-mark-bottom) + var(--track-mark-gap)); }
.legal-page .legal-section::after {
  left: auto;
  /* Ohne Inhaltsgutter gilt wie bei B4 der Abstand zur rechten Außenkante. */
  right: calc(var(--track-mark-right) - var(--panel-x, 0px));
  bottom: var(--track-mark-bottom);
  width: max-content;
  text-align: right;
}
@media(max-width:700px),(min-width:701px) and (max-width:980px) and (orientation:landscape) { .legal-page main { margin: 0; } }
@container(max-width:570px) { .tour-page .tour-detail-columns .tour-facts { grid-template-columns: 1fr; } }

.tour-page .tour-section::after { position: relative; right: calc(var(--track-mark-right) - var(--panel-x)); }

.legal-page .track[data-terminal="bandseite"] { --y: 302px; }
.legal-page .track[data-terminal="impressum-footer"] { --y: 382px; }
@media(max-width:700px),(min-width:701px) and (max-width:980px) and (orientation:landscape) {
  .legal-page .track[data-terminal="bandseite"] { --y: 222px; }
  .legal-page .track[data-terminal="impressum-footer"] { --y: 302px; }
  .legal-page .record-label strong { font-size: 12px; max-width: 92px; }
  .tour-page .record-label span,.legal-page .record-label span { font-size: 8px; }
  .tour-page .record-label strong { font-size: 16px; }
}

/* Dauerhafte Lesbarkeit und Raster, ohne zusätzliche Seitenränder. */
@font-face {
  font-family: "BB Display Readable";
  src: url("/assets/bb-bandschrift-c.woff2?v=20261022-c1") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0021-007E, U+00A1-00B6, U+00B8-00FF, U+2010-2013, U+2015-205E, U+20AC;
}
:root {
  --display-font: "BB Display Readable", Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
}
main, .wrap, .section-head-copy, .field { min-width: 0; }
.home-lockup { margin-inline: 0; }
.home-lockup picture { width: min(100%, 680px); }
.home-topline:empty { display: none; }

.media-hub, #kontakt { container-type: inline-size; }
.media-release-grid { grid-template-columns: minmax(0, 1fr); }
.photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 981px) { .photo-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.platform-links > a { min-width: 0; }
.platform-links > a > * { min-width: 0; }
.platform-links { grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr)); }
@container (min-width: 44rem) {
  .media-release-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Die Formular- und Downloadspalten richten sich nach ihrem eigenen Platz. */
.contact-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
.contact-grid > * { min-width: 0; }
.contact-form { width: 100%; max-width: 100%; }
.download-card { grid-template-columns: minmax(0, 1fr); }
.download-card strong, .download-card-action { overflow-wrap: anywhere; }
.download-menu__options a { grid-template-columns: 32px minmax(0, 1fr); }
.download-menu__options span:last-child { grid-column: 2; }
.section-head--contact .section-head-copy { padding-inline: 8px; }
.section-head--contact h2 {
  font-size: clamp(2.6rem, 9vw, 7rem);
  font-size: clamp(2.6rem, 12cqi, 7rem);
  line-height: var(--bb-heading-leading);
  overflow-wrap: anywhere;
}
@container (min-width: 54rem) {
  .contact-grid { grid-template-columns: minmax(0, 1.3fr) minmax(240px, .7fr); }
}

.legal-page main { container-type: inline-size; }
.legal-page .hero h1 {
  max-width: 100%;
  font-size: clamp(1.75rem, 9vw, 5.5rem);
  font-size: clamp(1.75rem, 12.5cqi, 5.5rem);
  line-height: 1.08;
  overflow-wrap: anywhere;
}
.legal-page .legal-section > h2 {
  font-size: clamp(1.5rem, 7vw, 3.5rem);
  font-size: clamp(1.5rem, 9.5cqi, 3.5rem);
  line-height: 1.12;
  overflow-wrap: anywhere;
}

.kat { padding-bottom: 24px; }
.karte .zeile { flex-wrap: wrap; gap: 10px; }
.karte__action {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--acid);
  color: var(--acid);
  font: 700 14px/1.4 Arial, Helvetica, sans-serif;
}
.karte:hover .karte__action,
.karte:focus-visible .karte__action { background: var(--acid); color: var(--ink); }
.band-login-dialog__head h2 {
  margin: 0;
  color: var(--acid);
  font: 700 20px/1.3 Arial, Helvetica, sans-serif;
}
.band-login-dialog #band-login-submit { background: var(--acid); border-color: var(--acid); }

.tour-card .tour-card__stamp {
  position: relative;
  inset: auto;
  display: block;
  width: min(100%, 19rem);
  height: auto;
  aspect-ratio: 1040 / 180;
  margin: 0 0 12px;
  transform: none;
  opacity: .9;
}
.tour-card .tour-card__stamp svg { overflow: hidden; }
.tour-card__reschedule {
  margin: 12px 0 0;
  max-width: 100%;
  color: var(--paper);
  font: 400 14px/1.6 Arial, Helvetica, sans-serif;
}
.tour-card__reschedule a { color: var(--acid); text-underline-offset: 3px; }

@media (max-width: 980px) {
  /* Nur der Plattenschatten wird beschnitten, kein Platz am body reserviert. */
  .vinyl-menu[data-vinyl-state="closed"],
  body:not([data-nav="open"]):not([data-nav="dragging"]) .record-nav { clip-path: inset(0); }
  body[data-view="1"] .wrap { padding-inline-end: 24px; }
}
/* Intro: Banner und Links bilden eine kompakte Gruppe im normalen Fluss. */
.home-panel {
  min-height: 0;
  align-content: start;
  padding-top: clamp(70px, 7vw, 96px);
  padding-bottom: clamp(40px, 4vw, 64px);
}
.intro-social {
  position: static;
  right: auto;
  bottom: auto;
  justify-content: center;
  margin-top: clamp(24px, 2vw, 32px);
}
.story-event__body p + p { margin-top: 16px; }

/* BLACK BALLOONS · Designkorrektur v11.2 · 12.10.2026
   Die aktuelle Coverbreite ist die Referenz; die linke Inhaltskante bleibt fest. */

/* Mitglieder: kleinere Beschriftung im Foto, bestehende Bild- und Rastermaße. */
#mitglieder .member-grid {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 0;
  row-gap: clamp(40px, 5vw, 64px);
  border: 0;
  background: transparent;
}
#mitglieder .member {
  --member-caption-space: calc(38.85px + clamp(1.5rem, 2.15vw, 2.35rem) * 1.08);
  --member-caption-gutter: clamp(8px, 3.333333cqi, 14px);
  --member-name-size: clamp(16px, 6.666667cqi, 20px);
  --member-role-size: clamp(9px, 4.333333cqi, 11px);
  display: grid;
  grid-template-columns: 66.666667% minmax(0, 1fr);
  grid-template-rows: auto var(--member-caption-space);
  gap: 0;
  container-type: inline-size;
  min-width: 0;
  min-height: 0;
  aspect-ratio: auto;
  padding: 0;
  align-items: stretch;
  justify-content: normal;
  overflow: visible;
  background: transparent;
  text-align: left;
}
#mitglieder .member-media {
  grid-area: 1 / 1;
  position: relative;
  inset: auto;
  z-index: 0;
  width: 100%;
  aspect-ratio: 4 / 5;
  margin: 0;
}
#mitglieder .member::after {
  content: "";
  grid-area: 1 / 1;
  position: relative;
  inset: auto;
  z-index: 1;
  align-self: end;
  height: clamp(58px, 30cqi, 90px);
  background: linear-gradient(0deg, rgba(0, 0, 0, .86), rgba(0, 0, 0, .3) 65%, transparent);
  pointer-events: none;
}
#mitglieder .member h3 {
  grid-area: 1 / 1;
  align-self: end;
  position: relative;
  z-index: 2;
  max-width: none;
  margin: 0 var(--member-caption-gutter) calc(var(--member-caption-gutter) + 4px + var(--member-role-size) * 1.25);
  font-size: var(--member-name-size);
  line-height: 1.08;
  text-shadow: 0 2px 8px #000;
}
#mitglieder .member p {
  grid-area: 1 / 1;
  align-self: end;
  position: relative;
  z-index: 2;
  max-width: none;
  margin: 0 var(--member-caption-gutter) var(--member-caption-gutter);
  font-size: var(--member-role-size);
  line-height: 1.25;
  letter-spacing: .04em;
  text-shadow: 0 2px 8px #000;
}
@media (max-width: 1180px) {
  #mitglieder .member-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  #mitglieder .member-grid { grid-template-columns: minmax(0, 1fr); }
}

/* Derselbe Coverdurchmesser wie v10; Rahmen und Inhalte folgen dieser Breite. */
#media .media-hub { margin-inline: 0; }
#media .release-display { width: 100%; margin-inline: 0; }
#media .release-display > .media-release-grid { width: 100%; zoom: 1; }
#media .release-card {
  --release-inset: clamp(20px, 3vw, 28px);
  box-sizing: content-box;
  width: calc((100% - 2px) * .666666667);
  max-width: calc(100% - 2 * var(--release-inset) - 2px);
  padding: var(--release-inset);
  grid-template-rows: auto auto auto;
  align-content: start;
  align-self: start;
  container-type: inline-size;
}
#media .release-card__intro { padding: 0 0 8px; }
#media .release-card__intro h4 {
  margin: 0 0 7px;
  min-height: 0;
  font-size: clamp(1.45rem, 14cqi, 2.45rem);
  line-height: .92;
  text-wrap: balance;
}
#media .release-card__intro .eyebrow {
  margin: 0;
  font-size: clamp(10px, 4.4cqi, 12px);
  line-height: 1.3;
  letter-spacing: .12em;
}
#media .release-cover {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}
#media .release-cover__back {
  padding: clamp(10px, 4.5cqi, 18px);
  padding-bottom: 32px;
  overscroll-behavior: auto;
}
#media .release-cover__back-title {
  flex: 0 0 auto;
  font-size: clamp(1.15rem, 10cqi, 1.8rem);
  line-height: .95;
}
#media .release-cover__back-meta {
  flex: 0 0 auto;
  margin-top: 4px;
  font-size: clamp(10px, 4.4cqi, 12px);
  line-height: 1.2;
  letter-spacing: .06em;
}
#media .release-tracklist {
  margin-top: 8px;
  grid-template-rows: repeat(var(--track-count), minmax(max-content, 1fr));
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: auto;
  scrollbar-width: thin;
}
/* A hidden 3D back face must not capture the wheel above the visible cover. */
#media .release-cover__front { overflow-x: clip; overflow-y: clip; }
#media .release-cover:not(.is-flipped) .release-cover__back,
#media .release-cover:not(.is-flipped) .release-tracklist {
  overflow-x: clip;
  overflow-y: clip;
  pointer-events: none;
}
#media .release-cover.is-flipped .release-cover__front { pointer-events: none; }
#media .release-tracklist li {
  grid-template-columns: 1.8em minmax(0, 1fr) auto;
  gap: clamp(4px, 2cqi, 7px);
  font-size: clamp(10px, 4.8cqi, 14px);
  line-height: 1.2;
  letter-spacing: .01em;
}
#media .release-tracklist li > span { overflow-wrap: anywhere; }
#media .release-tracklist time { font-size: 1em; white-space: nowrap; }
/* Gleiche Position, sichtbare Größe und Hoverfläche auf beiden Seiten. */
#media .release-cover .release-cover__toggle,
#media .release-cover.is-flipped .release-cover__toggle {
  inset: auto 8px 8px auto;
  width: 88px;
  max-width: calc(100% - 16px);
  height: 44px;
  min-width: 0;
  min-height: 44px;
  padding: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
}
#media .release-cover__toggle-label {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 22px;
  padding: 3px 4px;
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: .02em;
  white-space: nowrap;
}
#media .release-card__actions { padding: 20px 0 0; }
/* Beide Vierer-Boxen folgen der Social-Disgrace-Referenzbreite. */
#media .platform-links {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, 64px);
  gap: 6px;
}
@container (max-width: 200px) {
  #media .platform-links { grid-template-rows: repeat(2, 68px); }
}
#media .platform-link {
  min-height: 44px;
  padding: 7px;
  font-size: clamp(10.5px, 4.5cqi, 12px);
  line-height: 1.25;
  letter-spacing: .02em;
  overflow-wrap: anywhere;
}
#media .platform-link span {
  margin-top: 2px;
  font-size: clamp(9.75px, 4.2cqi, 11px);
  line-height: 1.2;
  letter-spacing: .01em;
}
#media .studio-credit { margin-top: calc(clamp(24px, 4vw, 38px) + 24px); }
#media .studio-credit__brand { margin-inline: 0; }
#media .studio-credit__title { margin-bottom: 32px; }

/* Die bereits korrigierten gelben Linien bleiben auf voller Inhaltsbreite. */
.legal-page main .hero { max-width: none; margin-inline: 0; }
.legal-page main .hero > h1,
.legal-page main .legal-section > h2 { width: 100%; }
.legal-page main .hero > h1::after,
.legal-page main .legal-section > h2::after { width: 100%; max-width: none; }

/* Verschoben gehört ausschließlich in die Überschrift des alten Termins. */
.tour-card.is-postponed .tour-card__title {
  position: relative;
  overflow: hidden;
}
.tour-card.is-postponed .tour-card__title > .tour-card__stamp {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  aspect-ratio: auto;
  margin: 0;
  transform: none;
  overflow: hidden;
  opacity: .85;
  pointer-events: none;
  transition: opacity .2s ease;
}
.tour-card.is-postponed .tour-card__title > .tour-card__stamp svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.tour-card.is-postponed:is(:hover, :focus-within, .is-interacting) .tour-card__stamp { opacity: .13; }
.tour-card.is-postponed:is(:hover, :focus-within, .is-interacting) .tour-card__title,
.tour-card.is-postponed:is(:hover, :focus-within, .is-interacting) .tour-card__line { opacity: 1; }
@media (prefers-reduced-motion: reduce) { .tour-card__stamp { transition: none !important; } }

/* BLACK BALLOONS · mobile Ausrichtung v12 · 12.10.2026
   Bildgrößen und Proportionen bleiben auf dem bestätigten v11.2-Stand.
   Die mobile Navigation bzw. eine sichtbare Seitennavigation behält ihren Platz. */
@media (max-width: 980px), (hover: none) and (pointer: coarse) {
  /* Gleiche Fotozone von zwei Dritteln, nun mit symmetrischen Seitenräumen. */
  #mitglieder .member {
    grid-template-columns: minmax(0, 1fr) 66.666667% minmax(0, 1fr);
  }
  #mitglieder .member-media,
  #mitglieder .member::after,
  #mitglieder .member h3,
  #mitglieder .member p { grid-area: 1 / 2; }

  /* Ganze Albumkarten zentrieren; Breite, Ränder und Bedienfelder beibehalten. */
  #media .media-hub { margin-inline: auto; }
  #media .release-card { justify-self: center; }

  /* Nur die Hauptplatten-Vorschau: Bildbreite wie bei den Albumcovern. */
  #merch .merch-showcase { container-type: inline-size; }
  #merch .merch-product-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(18px, 3vw, 30px);
  }
  #merch .merch-product {
    width: calc((100% - 2px) * .666666667 + 2px);
    justify-self: center;
  }
  @container (min-width: 44rem) {
    #merch .merch-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
}

/* Public site: avoid accidental text selection (including vinyl multiple taps). */
html,body,body *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
input,textarea,[contenteditable="true"],[contenteditable="true"] *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
