/* Fassung Modelltisch: Objekt im leeren Raum, kühler Zeichentisch, fast keine Oberfläche außer dem Stück. */
@font-face { font-family: "Familjen Grotesk"; src: url(schrift/familjen.woff2?v=629b9ced) format("woff2"); font-weight: 400 700; font-display: swap; }
:root {
  --bb-canvas: #D9DCDB; --bb-surface: #ECEEED; --bb-ink: #15191B; --bb-ink-soft: #3F474A; --bb-accent: #0B55A6; --bb-accent-ink: #FFFFFF;
  --bb-linie: #B9BEBD; --bb-rand-stark: #5A6265; --bb-font: "Familjen Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
  --bb-radius: 2px; --bb-logo: #0055A8; --bb-logo-hoehe: 44px; --bb-maxbreite: 1520px; --bb-fokus: #0B55A6; --bb-rand: clamp(16px, 3.4vw, 52px);
  --bb-strecke-seite: #D9DCDB; --bb-wahl-an: #E2E8EF; --bb-fehler: #A3211A; --bb-hinweis: #e6e0ce;
  --k-grund: #E6E8E7; --k-gruen: #D5DBD3; --k-wasser: #AFC6D8; --k-haus: #D0D3D2; --k-weg: #F4F5F4; --k-strasse: #FAFAFA; --k-haupt: #FFFFFF; --k-bahn: #8E979B; --k-text: #15191B; --k-ziel: #0B55A6;
  --schatten-klein: 0 1px 0 #fff inset, 0 1px 0 #b6bbba, 5px 9px 18px -8px rgb(32 40 44 / .34);
  --schatten-abzug: 1px 1px 0 #c3c7c6, 8px 12px 22px -10px rgb(32 40 44 / .42);
  --luft-gross: clamp(72px, 13vh, 180px);
  --weich: cubic-bezier(.23, 1, .32, 1);
}
html { scroll-padding-top: 12px; }
body.mt { font-size: clamp(1.03rem, 0.98rem + 0.25vw, 1.2rem); line-height: 1.55; font-weight: 400; overflow-x: clip; caret-color: var(--bb-accent); }
.mt h1, .mt h2, .mt h3 { font-weight: 600; letter-spacing: -.022em; line-height: 1.04; }
.mt a { text-decoration-thickness: 1px; }
.mt ::selection { background: #0B55A6; color: #fff; }

/* Obere Leiste: flach auf dem Tischgrund */
.mt-kopf { position: relative; z-index: 6; padding-block: 14px; }
.mt-kopf .bb-kopf { gap: clamp(12px, 1.5vw, 26px); }
.mt-kopf .bb-nav { font-weight: 500; font-size: 1rem; }
.mt-kopf .bb-nav > a, .mt-kopf .bb-nav__gruppe > a { display: inline-flex; align-items: center; min-height: 44px; }
.mt-kopf .bb-nav a[aria-current] { text-decoration: underline; text-underline-offset: .35em; }
@media (hover: hover) and (pointer: fine) { .mt-kopf .bb-nav a:hover { color: var(--bb-accent); } }
.mt-kopf .bb-nav__unter { border-radius: var(--bb-radius); box-shadow: var(--schatten-klein); }
.mt-kopf .bb-kopf__tel { font-size: 1rem; display: inline-flex; align-items: center; min-height: 44px; }
.mt-kopf .bb-sprachen a { min-width: 34px; min-height: 44px; font-size: .92rem; }
.mt-kopf .bb-kopf__cta { min-height: 46px; padding-inline: 18px; }
@media (max-width: 1320px) and (min-width: 1041px) { .mt-kopf .bb-kopf__tel { display: none; } }
.bb-menue { --bb-rand: 16px; }

/* Knöpfe und Verweise */
.mt .bb-knopf { font-weight: 600; letter-spacing: -.005em; box-shadow: 0 1px 0 rgb(255 255 255 / .22) inset; }
@media (hover: hover) and (pointer: fine) {
  .mt .bb-knopf:hover { background: #0A4A90; border-color: #0A4A90; }
  .mt .bb-knopf--zweit:hover, .mt .bb-knopf--still:hover { background: var(--bb-surface); border-color: var(--bb-ink); color: var(--bb-ink); }
}
.mt-verweis { display: inline-flex; align-items: center; gap: .55em; min-height: 44px; padding: 0; border: 0; background: none; color: var(--bb-accent); font-weight: 600; text-decoration: none; cursor: pointer; font-size: inherit; }
.mt-pfeil { width: 22px; height: 12px; flex: none; transition: transform .16s var(--weich); }
@media (hover: hover) and (pointer: fine) { .mt-verweis:hover .mt-pfeil { transform: translateX(4px); } }
.mt-verweis--zurueck .mt-pfeil { transform: scaleX(-1); }
@media (hover: hover) and (pointer: fine) { .mt-verweis--zurueck:hover .mt-pfeil { transform: scaleX(-1) translateX(4px); } }

/* Das eine Schild: immer dieselbe Form */
.mt-schild { position: relative; padding: clamp(14px, 1.3vw, 20px) clamp(16px, 1.5vw, 22px); background: var(--bb-surface); box-shadow: var(--schatten-klein); border-radius: 1px; font-size: .96em; line-height: 1.45; max-width: 31em; }
.mt-schild__titel, .mt .mt-schild__titel { font-size: 1.14em; font-weight: 650; letter-spacing: -.012em; line-height: 1.18; margin: 0 0 .42em; }
.mt-schild__text p + p { margin-top: .6em; }
.mt-schild__verweis { margin-top: .35em; }
.mt-schild .bb-knopf { margin-top: .5em; }

/* Startbild */
.mt-held { position: relative; margin-top: -72px; min-height: max(640px, 100svh); display: flex; align-items: center; overflow: hidden; isolation: isolate; }
.mt-held__buehne { position: absolute; inset: 0; z-index: 0; cursor: grab; touch-action: pan-y; -webkit-user-select: none; user-select: none; -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 90px), transparent); mask-image: linear-gradient(to bottom, #000 calc(100% - 90px), transparent); }
.mt-held__buehne.zieht { cursor: grabbing; }
.mt-poster { position: absolute; inset: 0; display: block; }
.mt-poster img { position: absolute; left: 0; top: 50%; width: 100%; height: auto; transform: translateY(-50%); -webkit-mask-image: linear-gradient(to bottom, transparent, #000 7%, #000 93%, transparent); mask-image: linear-gradient(to bottom, transparent, #000 7%, #000 93%, transparent); }
.mt-held canvas { position: absolute; inset: 0; display: block; width: 100%; height: 100%; opacity: .001; transition: opacity .5s ease-out; will-change: opacity; }
.mt-held canvas.an { opacity: 1; }
.mt-held__innen { position: relative; z-index: 2; pointer-events: none; padding-block: 92px 28px; }
.mt-held__text, .mt-regler { pointer-events: auto; }
.mt-held__text { width: min(45vw, 700px); }
.mt-held h1 { font-size: clamp(2.3rem, min(calc(1rem + 2.9vw), 8.5vh), 4.25rem); line-height: .99; letter-spacing: -.034em; }
.mt-held__unter { margin-top: clamp(14px, 2.2vh, 24px); max-width: 30em; font-size: clamp(1.05rem, 1.25vw, 1.32rem); line-height: 1.42; color: var(--bb-ink); }
.mt-held__knoepfe { display: flex; flex-wrap: wrap; gap: 10px; margin-top: clamp(16px, 2.6vh, 28px); }
.mt-regler { margin-top: clamp(14px, 2.6vh, 34px); width: min(45vw, 560px); max-width: 560px; padding-block: 12px; font-size: .93rem; opacity: 0; transform: translateY(4px); transition: opacity .35s ease-out, transform .35s var(--weich); }
.mt-regler.an { opacity: 1; transform: none; }
.mt-regler__hilfe { color: var(--bb-ink-soft); margin-bottom: .55em; }
.mt-regler__zeile--dreh { grid-template-columns: 4.6em minmax(70px, 1fr) !important; }
.mt-regler__zeile { display: grid; grid-template-columns: 4.6em auto minmax(70px, 1fr) auto; align-items: center; gap: 2px 10px; min-height: 40px; }
.mt-regler__zeile label { font-weight: 600; }
.mt-regler__ende { color: var(--bb-ink-soft); font-size: .92em; }
.mt input[type="range"] { -webkit-appearance: none; appearance: none; width: 100%; height: 40px; margin: 0; background: transparent; cursor: pointer; touch-action: pan-y; }
.mt input[type="range"]::-webkit-slider-runnable-track { height: 2px; background: var(--bb-ink); }
.mt input[type="range"]::-moz-range-track { height: 2px; background: var(--bb-ink); }
.mt input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 24px; height: 24px; margin-top: -11px; border-radius: 50%; background: #fff; border: 2px solid var(--bb-ink); box-shadow: 1px 2px 4px rgb(20 26 30 / .3); }
.mt input[type="range"]::-moz-range-thumb { width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid var(--bb-ink); box-shadow: 1px 2px 4px rgb(20 26 30 / .3); }
.mt input[type="range"]:focus-visible { outline: 3px solid var(--bb-fokus); outline-offset: 2px; }
.mt-daecher { display: grid; grid-template-columns: 4.6em minmax(0, 1fr); align-items: center; gap: 10px; margin-top: .25em; }
.mt-daecher__titel { font-weight: 600; line-height: 1.15; hyphens: auto; }
.mt-daecher__wahl { display: flex; flex-wrap: wrap; gap: 4px; }
.mt-dach { min-height: 40px; padding: 0 8px; border: 1px solid var(--bb-rand-stark); border-radius: var(--bb-radius); background: transparent; color: var(--bb-ink); cursor: pointer; font-size: .93em; font-weight: 500; transition: background-color .12s, color .12s; }
.mt-dach[aria-pressed="true"] { background: var(--bb-ink); color: #fff; border-color: var(--bb-ink); }
@media (hover: hover) and (pointer: fine) { .mt-dach[aria-pressed="false"]:hover { border-color: var(--bb-accent); color: var(--bb-accent); } }

/* Ruhe: viel leerer Tisch */
.mt-ruhe { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 0 clamp(16px, 2vw, 28px); align-items: end; padding-block: var(--luft-gross) clamp(24px, 6vh, 80px); }
.mt-ruhe__text { grid-column: 1 / span 7; }
.mt-ruhe h2 { font-size: clamp(2.2rem, 1rem + 2.7vw, 4rem); letter-spacing: -.034em; line-height: .98; }
.mt-ruhe p { margin-top: 1em; max-width: 34em; font-size: clamp(1.1rem, 1.45vw, 1.42rem); line-height: 1.42; }
.mt-ruhe__bild { grid-column: 8 / -1; margin-right: calc(-1 * var(--bb-rand)); }
.mt-ruhe__bild img { width: 100%; height: auto; }

/* Der Gang am Tisch: Stücke verschieden groß und versetzt */
.mt-gang { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); row-gap: clamp(16px, 3.4vh, 48px); padding-block: 0 var(--luft-gross); }
.mt-stueck { position: relative; display: flex; flex-direction: column; align-items: flex-start; }
.mt-stueck__bild { width: 100%; }
.mt-stueck__bild img { width: 100%; height: auto; }
.mt-stueck .mt-schild { margin-top: clamp(-44px, -2.6vw, -14px); z-index: 1; }
.mt-stueck--1 { grid-column: 1 / span 8; margin-left: calc(-1 * var(--bb-rand)); }
.mt-stueck--1 .mt-schild { margin-left: clamp(16px, 22%, 240px); }
.mt-stueck--2 { grid-column: 8 / -1; margin-top: clamp(50px, 13vh, 170px); }
.mt-stueck--2 .mt-schild { margin-left: 8%; margin-top: 2px; }
.mt-stueck--3 { grid-column: 1 / span 7; margin-left: calc(-1 * var(--bb-rand) / 2); }
.mt-stueck--3 .mt-schild { margin-left: 34%; }
.mt-stueck--4 { grid-column: 8 / -1; margin-top: clamp(30px, 8vh, 110px); margin-right: calc(-1 * var(--bb-rand)); }
.mt-stueck--4 .mt-schild { max-width: min(31em, calc(100% - var(--bb-rand))); margin-top: 2px; }
.mt-stueck--5 { grid-column: 1 / span 6; }
.mt-stueck--5 .mt-schild { margin-left: 18%; }
.mt-stueck--6 { grid-column: 6 / -1; margin-top: clamp(16px, 5vh, 70px); margin-right: calc(-1 * var(--bb-rand)); }
.mt-stueck--6 .mt-schild { margin-left: 8%; max-width: min(31em, calc(92% - var(--bb-rand))); }
.mt-gang--haeuser .mt-stueck h2 { font-size: 1.14em; }
.mt-stueck__bild.kommt, .mt-rahmen.kommt, .mt-abzug.kommt { opacity: 0; transform: translateY(14px); }
.mt-stueck__bild.da, .mt-rahmen.da, .mt-abzug.da { opacity: 1; transform: none; transition: opacity .7s ease-out, transform .9s var(--weich); }

/* Dreiländereck */
.mt-region { position: relative; padding-bottom: clamp(20px, 4vh, 60px); }
.mt-region__figur { position: relative; }
.mt-region__bild { position: relative; }
.mt-region__bild img { width: 100%; height: auto; }
.mt-region__bild--hoch { display: none; }
.mt-marke { position: absolute; transform: translate(-50%, -50%); padding: .22em .55em; background: var(--bb-surface); box-shadow: var(--schatten-klein); font-size: clamp(.82rem, .9vw, 1rem); font-weight: 600; line-height: 1.2; white-space: nowrap; border-radius: 1px; }
.mt-marke--land { background: transparent; box-shadow: none; font-weight: 650; font-size: clamp(.9rem, 1.35vw, 1.5rem); letter-spacing: -.01em; color: var(--bb-ink); text-shadow: 0 0 6px #f3e8d6, 0 0 2px #f3e8d6; }
.mt-region__text { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); pointer-events: none; }
.mt-region__text .mt-schild { pointer-events: auto; max-width: min(27em, 30vw); }
.mt-region .mt-schild__titel { font-size: clamp(1.5rem, 2.4vw, 2.5rem); letter-spacing: -.024em; line-height: 1.02; }
.mt-adresse { font-weight: 500; }
.mt-quelle { position: relative; margin-top: 12px; max-width: min(27em, 30vw); font-size: .8rem; line-height: 1.35; color: var(--bb-ink-soft); pointer-events: auto; }

/* Über uns */
.mt-ueber { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: center; padding-block: var(--luft-gross); }
.mt-rahmen { grid-column: 2 / span 4; justify-self: center; position: relative; width: min(100%, 340px); }
.mt-rahmen__holz { display: block; padding: 7px; background: linear-gradient(135deg, #D7BE98, #C5A67B 55%, #B99A70); box-shadow: 0 1px 0 #E8D8BC inset, 2px 3px 0 #9F845F, 16px 22px 34px -14px rgb(30 38 42 / .5); }
.mt-rahmen__holz img { width: 100%; height: auto; padding: clamp(12px, 1.4vw, 20px); background: #F6F5F1; box-shadow: inset 1px 1px 3px rgb(30 38 42 / .3); }
.mt-rahmen figcaption { margin-top: 18px; font-size: .92rem; font-weight: 600; text-align: center; }
.mt-ueber__text { grid-column: 7 / span 5; }
.mt-ueber h2 { font-size: clamp(1.9rem, 1.15rem + 2vw, 3.25rem); letter-spacing: -.03em; }
.mt-ueber__satz { margin-top: .7em; font-size: clamp(1.2rem, 1.8vw, 1.72rem); line-height: 1.26; letter-spacing: -.012em; font-weight: 500; }
.mt-ueber__text p + p { margin-top: .9em; max-width: 36em; }

/* Auswahl: Abzüge auf dem Tisch */
.mt-auswahl { padding-block: 0 var(--luft-gross); }
.mt-auswahl__kopf { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: end; margin-bottom: clamp(20px, 3vh, 40px); }
.mt-auswahl__kopf h2 { grid-column: 1 / span 6; font-size: clamp(1.9rem, 1.15rem + 2vw, 3.25rem); letter-spacing: -.03em; }
.mt-auswahl__kopf h2 { grid-row: 1 / span 2; }
.mt-auswahl__kopf p { grid-column: 7 / -1; font-size: 1.05em; }
.mt-auswahl__kopf .mt-verweis { grid-column: 7 / -1; justify-self: start; margin-top: .3em; white-space: nowrap; }
.mt-auswahl__kopf--zwei { margin-top: clamp(56px, 11vh, 140px); }
.mt-auswahl__kopf--zwei h2 { grid-column: 1 / -1; }
.mt-abzuege { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(14px, 1.8vw, 26px); row-gap: clamp(26px, 5vh, 56px); align-items: start; }
.mt-abzug { position: relative; display: block; text-decoration: none; color: var(--bb-ink); }
.mt-abzug img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; background: #f6f5f1; padding: clamp(4px, .5vw, 8px); box-shadow: var(--schatten-abzug); transition: transform .28s var(--weich), box-shadow .28s var(--weich); }
@media (hover: hover) and (pointer: fine) { .mt-abzug:hover img { transform: translateY(-3px); box-shadow: 1px 1px 0 #c3c7c6, 10px 18px 28px -10px rgb(32 40 44 / .46); } .mt-abzug:hover .mt-abzug__schild { color: var(--bb-accent); } }
.mt-abzug__schild { display: inline-block; max-width: calc(100% - 8px); hyphens: auto; margin: -14px 0 0 clamp(10px, 8%, 26px); position: relative; padding: .32em .7em; background: var(--bb-surface); box-shadow: var(--schatten-klein); font-size: .92rem; font-weight: 650; line-height: 1.25; transition: color .15s; }
.mt-abzuege--reihen .mt-abzug--1 { grid-column: 1 / span 6; grid-row: 1 / span 2; }
.mt-abzuege--reihen .mt-abzug--2 { grid-column: 7 / span 3; }
.mt-abzuege--reihen .mt-abzug--3 { grid-column: 10 / -1; margin-top: clamp(14px, 3vh, 34px); }
.mt-abzuege--reihen .mt-abzug--4 { grid-column: 7 / span 3; }
.mt-abzuege--reihen .mt-abzug--5 { grid-column: 10 / -1; margin-top: clamp(14px, 3vh, 34px); }
.mt-abzuege--fotos .mt-abzug--a { grid-column: 1 / span 5; }
.mt-abzuege--fotos .mt-abzug--b { grid-column: 6 / span 4; margin-top: clamp(40px, 12vh, 150px); }
.mt-abzuege--fotos .mt-abzug--c { grid-column: 10 / -1; }
.mt-abzuege--regal { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 22px; }
.mt-regal__stueck:nth-child(4n + 2) { margin-top: 28px; } .mt-regal__stueck:nth-child(4n + 4) { margin-top: 44px; }

/* Abschluss */
.mt-schluss { position: relative; min-height: clamp(620px, 96vh, 1100px); display: flex; align-items: center; overflow: hidden; isolation: isolate; }
.mt-schluss__modell { position: absolute; inset: 0; z-index: -1; -webkit-mask-image: linear-gradient(to bottom, transparent, #000 90px, #000 calc(100% - 70px), transparent); mask-image: linear-gradient(to bottom, transparent, #000 90px, #000 calc(100% - 70px), transparent); }
.mt-schluss__modell img { width: 100%; height: 100%; object-fit: cover; object-position: 82% 50%; }
.mt-schluss__innen { padding-block: clamp(56px, 10vh, 120px); }
.mt-erste { width: min(100%, 700px); }
.mt-erste .bb-erste__frage { font-size: clamp(2.1rem, 1rem + 2.4vw, 3.5rem); letter-spacing: -.034em; line-height: .98; }
.mt-erste .bb-erste__hilfe { margin-top: .9em; max-width: 34em; color: var(--bb-ink); }
.mt-erste .bb-erste__wahlen { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 22px; gap: 6px; }
.mt-erste .bb-erste__wahl { background: rgb(236 238 237 / .92); border-color: #6c7476; min-height: 62px; padding: 8px 12px; transition: border-color .12s, background-color .12s, transform .14s; }
.mt-erste .bb-erste__wahl:nth-child(9) { grid-column: 1 / -1; }
.mt-erste .bb-erste__wahl small { color: var(--bb-ink-soft); }
@media (hover: hover) and (pointer: fine) { .mt-erste .bb-erste__wahl:hover { background: #fff; border-color: var(--bb-accent); } }
.mt-schluss__kontakt { margin-top: 18px; width: min(100%, 700px); max-width: 700px; }
.mt-schluss__kontakt .bb-kontaktdaten { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 22px; }
.mt-schluss__kontakt .bb-kontaktdaten p + p { margin-top: 0; }

/* Seitenkopf der Unterseiten: ein Modellstück auf dem Tisch */
.mt-kopfseite { padding-top: clamp(12px, 3vh, 36px); }
.mt-kopfseite__innen { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: center; }
.mt-kopfseite__text { grid-column: 1 / span 8; grid-row: 1; position: relative; z-index: 1; }
.mt-kopfseite h1 { font-size: clamp(2.3rem, 1rem + 3vw, 4.25rem); letter-spacing: -.034em; line-height: .98; }
@media (max-width: 420px) { .mt-kopfseite h1 { font-size: clamp(1.9rem, 9.6vw, 2.5rem); } }
.mt-kopfseite p { margin-top: .85em; max-width: 30em; font-size: clamp(1.1rem, 1.5vw, 1.42rem); line-height: 1.38; }
.mt-kopfseite__knopf { margin-top: clamp(16px, 3vh, 28px); }
.mt-kopfseite__bild { grid-column: 6 / -1; grid-row: 1; margin-right: calc(-1 * var(--bb-rand)); }
.mt-kopfseite__bild img { width: 100%; height: auto; }
.mt-kopfseite--still .mt-kopfseite__text { grid-column: 1 / -1; padding-block: clamp(14px, 4vh, 44px) clamp(16px, 3vh, 30px); }
.mt-seitenraum { padding-block: clamp(20px, 4vh, 56px) clamp(44px, 8vh, 110px); }
.mt-partner { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: start; margin-bottom: var(--luft-gross); }
.mt-partner__satz { grid-column: 1 / span 7; font-size: clamp(1.25rem, 2.1vw, 2rem); line-height: 1.22; letter-spacing: -.016em; font-weight: 500; max-width: 26em; margin-bottom: clamp(28px, 5vh, 56px); }
.mt-partner .mt-schild { grid-column: 9 / -1; }
.mt-partner .mt-schild__titel { font-size: 1.14em; }
.mt-partner a { color: var(--bb-accent); font-weight: 600; display: inline-flex; align-items: center; min-height: 32px; }
.mt-regal, .mt-fotos { margin-bottom: var(--luft-gross); }
.mt-regal h2, .mt-fotos h2 { font-size: clamp(1.9rem, 1.15rem + 2vw, 3.25rem); letter-spacing: -.03em; }
.mt-regal > p { margin-top: .5em; font-size: 1.05em; }
.mt-fotos .bb-galerie { --bb-galerie-luecke: clamp(10px, 1.3vw, 20px); margin-top: 24px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mt-fotos .bb-galerie:not(.bb-galerie--hoch) .bb-galerie__bild:nth-child(7n + 1) { grid-column: span 2; grid-row: span 2; aspect-ratio: auto; }
.mt-fotos--efh .bb-galerie .bb-galerie__bild:last-child { grid-column: span 2; aspect-ratio: auto; }
.mt-fotos .bb-galerie__bild { background: #f6f5f1; padding: clamp(3px, .4vw, 7px); box-shadow: var(--schatten-abzug); }
.mt-fotos .bb-galerie--hoch { grid-template-columns: repeat(auto-fill, minmax(min(46%, 260px), 1fr)); }
.mt-schilder { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); row-gap: clamp(20px, 3.4vh, 40px); padding-bottom: clamp(12px, 3vh, 40px); }
.mt-schilder .mt-schild { max-width: none; }
.mt-schilder li:nth-child(1) { grid-column: 1 / span 5; } .mt-schilder li:nth-child(2) { grid-column: 7 / span 5; margin-top: 64px; }
.mt-schilder li:nth-child(3) { grid-column: 2 / span 4; } .mt-schilder li:nth-child(4) { grid-column: 6 / span 5; margin-top: 44px; } .mt-schilder li:nth-child(5) { grid-column: 1 / span 6; }
.mt-schilder .mt-schild__titel, .mt .mt-schilder h2 { font-size: clamp(1.25rem, 1.9vw, 1.7rem); letter-spacing: -.02em; }
.mt .bb-abschnitt--schluss { padding-block: clamp(24px, 5vh, 56px) clamp(56px, 10vh, 120px); }
.mt .bb-schluss__satz { font-size: clamp(2rem, 1rem + 2.2vw, 3.5rem); letter-spacing: -.03em; line-height: 1; max-width: 22em; margin-bottom: .32em; }
.mt-zurueck { margin-bottom: 14px; }
.mt-aktion { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: start; }
.mt-aktion__text { grid-column: 1 / span 7; }
.mt-aktion__text > p { font-size: clamp(1.1rem, 1.4vw, 1.34rem); line-height: 1.44; max-width: 34em; margin-bottom: clamp(20px, 4vh, 40px); }
.mt-aktion__flyer { grid-column: 9 / -1; }
.mt-aktion .bb-galerie { --bb-galerie-format: 923 / 2000; grid-template-columns: minmax(0, 1fr); }
.mt-aktion .bb-galerie__bild { background: #fff; padding: 6px; box-shadow: var(--schatten-abzug); }
.mt-aktion .bb-galerie__bild img { object-fit: contain; }
.mt-anfahrt { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: start; margin-bottom: clamp(30px, 6vh, 60px); }
.mt-anfahrt__schild { grid-column: 1 / span 4; }
.mt-anfahrt__schild .bb-knopf { margin-top: 14px; }
.mt-anfahrt__schild h2 { font-size: 1.14em; margin-top: 1.1em; }
.mt-anfahrt__karte { grid-column: 5 / -1; }
.mt-anfahrt .bb-kartenrahmen { background: #fff; padding: 6px; box-shadow: var(--schatten-abzug); }
.mt-anfahrt figcaption { margin-top: 10px; font-size: .84rem; color: var(--bb-ink-soft); }
.mt-kontakt { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); align-items: start; }
.mt-kontakt .mt-erste { grid-column: 1 / span 8; width: auto; }
.mt-kontakt__daten { grid-column: 9 / -1; }
.mt-kontakt .bb-erste__frage { font-size: clamp(2rem, 1rem + 2.2vw, 3.25rem); }
.mt-blatt { max-width: var(--bb-maxbreite); margin-inline: auto; padding: 0 var(--bb-rand) clamp(40px, 7vh, 90px); }
.mt-blatt .bb-abschnitt { padding: clamp(20px, 3.4vw, 52px) clamp(16px, 4vw, 64px); background: var(--bb-surface); box-shadow: var(--schatten-klein); max-width: 56rem; }
.mt-blatt .bb-breite { padding-inline: 0; }
.mt .bb-recht h2 { letter-spacing: -.012em; }
.mt .bb-recht a { color: var(--bb-accent); }

/* Fuß */
.mt-fuss { border-top: 1px solid var(--bb-linie); }
.mt-fuss nav a { text-underline-offset: .2em; }
/* Wortmarke callithero mit festen Farben: auf dem schwarzen Plättchen wie im Bildzeichen, sonst fehlt ihr auf dem Tischgrund der Kontrast */
.mt-fuss .bb-vermerk a { padding: 0 10px 0 5px; background: #000; color: #fff; border-radius: 3px; }

/* Anfrage: dieselbe Szene läuft im Dialog weiter */
.mt .bb-strecke { box-shadow: 0 40px 90px -30px rgb(5 10 18 / .6); }
.mt-seite { background: var(--bb-canvas); }
.mt .bb-strecke__buehne { min-height: 200px; cursor: grab; touch-action: pan-y; overflow: hidden; }
.mt .bb-strecke__buehne.zieht { cursor: grabbing; }
.mt .bb-strecke__buehne canvas { position: absolute; inset: 0; display: block; width: 100%; height: 100%; opacity: 1; }
.mt .bb-strecke__buehne.mt-buehne-still { background: url(bilder/poster-hoch-800.webp?v=2d2a084a) center / cover; }
.mt-dialogsonne { display: grid; grid-template-columns: auto auto minmax(70px, 1fr) auto; align-items: center; gap: 2px 10px; padding: 2px 20px; background: var(--bb-surface); font-size: .9rem; min-height: 44px; }
.mt-dialogsonne label { font-weight: 600; }
.mt-dialogsonne span { color: var(--bb-ink-soft); }
.mt .bb-mappe { background: var(--bb-surface); border-top: 1px solid var(--bb-linie); }
@media (min-width: 901px) {
  .mt .bb-mappe { flex: 0 0 auto; max-height: 34%; }
  .mt .bb-strecke__buehne { min-height: 54%; }
  .mt .bb-strecke--pruefen .bb-mappe, .mt .bb-strecke--ende .bb-mappe { display: none; }
  .mt .bb-strecke--pruefen .bb-knopf--voll { position: sticky; bottom: 78px; z-index: 1; box-shadow: 0 12px 0 var(--bb-surface), 0 -12px 0 var(--bb-surface); }
}
.mt .bb-wahl { display: flex; }
.mt .bb-wahl__text { flex: 1; }
.mt-dialoghinweis { padding: 8px 20px; background: var(--bb-surface); font-size: .88rem; line-height: 1.3; border-top: 1px solid var(--bb-linie); }
.mt-person { display: flex; align-items: center; gap: 12px; padding: 10px 20px; background: var(--bb-surface); border-top: 1px solid var(--bb-linie); font-size: .9rem; line-height: 1.25; }
.mt-person img { width: 54px; height: 54px; object-fit: cover; object-position: 50% 12%; border-radius: 50%; }
.mt-person b { display: block; font-weight: 650; }
@media (max-width: 900px) { .mt-dialoghinweis, .mt-person { display: none; } }
.mt .bb-wahl__text { background: #fff; }
.mt .bb-rueckmeldung { background: #E2E8EF; }

@media (max-width: 1040px) {
  .mt-held { margin-top: 0; min-height: 0; overflow: visible; align-items: stretch; }
  .mt-held__innen { padding-block: clamp(10px, 3vh, 26px) 0; }
  .mt-held__text, .mt-regler { width: 100%; max-width: 680px; }
  .mt-held h1 { font-size: clamp(2.1rem, 8vw, 3.4rem); }
  .mt-held__buehne { position: relative; inset: auto; aspect-ratio: 1.12; max-height: 72svh; width: 100%; -webkit-mask-image: linear-gradient(to bottom, transparent, #000 110px, #000 calc(100% - 60px), transparent); mask-image: linear-gradient(to bottom, transparent, #000 110px, #000 calc(100% - 60px), transparent); }
  .mt-poster img { top: 0; height: 100%; transform: none; object-fit: contain; -webkit-mask-image: none; mask-image: none; }
  .mt-held__innen { display: contents; }
  .mt-held__text { position: relative; z-index: 2; padding: clamp(6px, 2vh, 20px) var(--bb-rand) 0; order: 1; }
  .mt-held { display: flex; flex-direction: column; }
  .mt-held__buehne { order: 2; margin-top: -48px; }
  .mt-regler { order: 3; margin: -18px var(--bb-rand) 0; width: auto; position: relative; z-index: 2; }
  .mt-ruhe { padding-top: clamp(56px, 9vh, 90px); }
  .mt-ruhe__text { grid-column: 1 / span 8; }
  .mt-ruhe__bild { grid-column: 7 / -1; margin-top: 24px; }
  .mt-region__text .mt-schild, .mt-quelle { max-width: 30em; }
  .mt-region__text { position: relative; top: auto; transform: none; margin-top: -24px; }
}
@media (max-width: 760px) {
  .mt-ruhe__text, .mt-ruhe__bild { grid-column: 1 / -1; }
  .mt-ruhe__bild { margin-inline: calc(-1 * var(--bb-rand)); }
  .mt-gang { display: block; }
  .mt-stueck, .mt-stueck--1, .mt-stueck--2, .mt-stueck--3, .mt-stueck--4, .mt-stueck--5, .mt-stueck--6 { margin: 0 0 clamp(30px, 6vh, 56px); margin-inline: calc(-1 * var(--bb-rand)); }
  .mt-stueck .mt-schild, .mt-stueck--1 .mt-schild, .mt-stueck--2 .mt-schild, .mt-stueck--3 .mt-schild, .mt-stueck--5 .mt-schild, .mt-stueck--6 .mt-schild { margin: -24px var(--bb-rand) 0; width: calc(100% - 2 * var(--bb-rand)); max-width: none; }
  .mt-region__bild--breit { display: none; }
  .mt-region__bild--hoch { display: block; }
  .mt-marke--land { font-size: .95rem; }
  .mt-marke { font-size: .84rem; }
  .mt-ueber { display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
  .mt-rahmen { align-self: center; width: min(68vw, 300px); }
  .mt-auswahl__kopf { display: block; }
  .mt-auswahl__kopf p { margin-top: .5em; }
  .mt-abzuege { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mt-abzuege .mt-abzug { grid-column: auto !important; margin-top: 0 !important; }
  .mt-abzuege--reihen .mt-abzug--1, .mt-abzuege--fotos .mt-abzug--a { grid-column: 1 / -1 !important; }
  .mt-abzuege--regal { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mt-regal__stueck:nth-child(n) { margin-top: 0; }
  .mt-abzug__schild { margin-left: 4px; font-size: .86rem; }
  .mt-erste .bb-erste__wahlen { grid-template-columns: minmax(0, 1fr); }
  .mt-erste .bb-erste__wahl:nth-child(9) { grid-column: auto; }
  .mt-schluss { display: block; overflow: visible; min-height: 0; }
  .mt-schluss__modell { position: relative; inset: auto; z-index: 0; aspect-ratio: 1.3; margin-bottom: -44px; }
  .mt-schluss__modell img { object-position: 78% 50%; }
  .mt-schluss__innen { position: relative; padding-top: 0; }
  .mt-kopfseite__innen { display: block; }
  .mt-kopfseite__bild { margin: -20px calc(-1 * var(--bb-rand)) 0; }
  .mt-partner, .mt-aktion, .mt-anfahrt, .mt-kontakt, .mt-schilder { display: flex; flex-direction: column; align-items: stretch; gap: 20px; }
  .mt-partner__satz { margin-bottom: 0; }
  .mt-schilder li:nth-child(n) { margin-top: 0; }
  .mt-aktion__flyer { width: min(76vw, 340px); align-self: center; }
  .mt-fotos .bb-galerie { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mt-fotos .bb-galerie--hoch { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mt-kopf { padding-block: 10px; }
  .mt-kontakt .mt-erste { margin-top: 8px; }
  :root { --bb-logo-hoehe: 38px; }
}
@media (max-width: 900px) {
  /* Dialog am Telefon: Das Modell oben, wenn die Höhe reicht, sonst bleibt es weg */
  .mt-dialogsonne { display: none; }
}
@media (max-width: 900px) and (min-height: 640px) {
  .mt .bb-strecke__seite { order: 0; flex: 0 0 auto; max-height: none; }
  .mt .bb-strecke__buehne { display: block; flex: 0 0 auto; height: clamp(120px, 22dvh, 200px); min-height: 0; }
  .mt .bb-mappe { border-top: 1px solid var(--bb-linie); }
}
@media (max-width: 360px) { .mt-regler__zeile { grid-template-columns: 3.9em auto minmax(40px, 1fr) auto; gap: 2px 5px; } .mt-regler__ende { font-size: .84em; } .mt-daecher { grid-template-columns: minmax(0, 1fr); gap: 2px; } }
@media (min-width: 1200px) {
  .mt-regler { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); column-gap: 18px; width: min(46vw, 700px); max-width: 700px; }
  .mt-regler .mt-schild__titel, .mt-regler__hilfe, .mt-daecher { grid-column: 1 / -1; }
  .mt-regler__zeile--dreh { grid-template-columns: auto minmax(60px, 1fr) !important; }
}
@media (min-width: 1041px) and (max-height: 800px) { .mt-regler__hilfe { display: none; } .mt-regler .mt-schild__titel { margin-bottom: .1em; } }
@media (prefers-reduced-motion: reduce) {
  .mt-held canvas { transition: none; }
  .mt-regler { transition: none; transform: none; }
}
@media print { .mt-held__buehne, .mt-schluss__modell { display: none; } }
