/* BOSSMA Anfrage v2.0: Schritt-Formular mit passender Zusammenfassung (nutzt die Tokens aus bx-effekte.css) */
@property --bxa-winkel { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
.bx-anfrage { max-width: 1040px; margin-inline: auto; }
.bxa-huelle { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 300px); gap: 20px; align-items: start; }

/* Formular-Karte mit wanderndem Verlaufsrand */
.bxa-form { position: relative; min-width: 0; background: var(--bx-flaeche); border-radius: var(--bx-radius); box-shadow: 0 1px 2px rgba(21, 37, 46, .05), 0 30px 60px -28px rgba(21, 37, 46, .35); padding: clamp(22px, 4vw, 44px); isolation: isolate; }
.bxa-form::before { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; padding: 1.5px;
  background: conic-gradient(from var(--bxa-winkel), var(--bx-linie) 0deg, var(--bx-akzent) 60deg, var(--bx-akzent-2) 110deg, var(--bx-linie) 170deg, var(--bx-linie) 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }

/* Schrittanzeige */
.bxa-schritte { --fortschritt: 0; list-style: none !important; margin: 0 0 26px !important; padding: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); position: relative; }
.bxa-schritte::before, .bxa-schritte::after { content: ""; position: absolute; top: 15px; left: 16px; right: calc(33.33% - 16px); height: 2px; border-radius: 2px; background: var(--bx-linie); }
.bxa-schritte::after { background: linear-gradient(90deg, var(--bx-akzent), var(--bx-akzent-2)); transform-origin: left; transform: scaleX(var(--fortschritt)); transition: transform .6s var(--bx-ease); }
.bxa-schritte li { position: relative; z-index: 1; display: flex; align-items: center; gap: 10px; list-style: none !important; margin: 0; }
.bxa-punkt { position: relative; flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--bx-flaeche); border: 2px solid var(--bx-linie); color: var(--bx-text-2); font: 600 .8rem/1 var(--bx-font-mono); transition: background .3s, border-color .3s, color .3s, transform .4s var(--bx-feder); }
.bxa-punkt svg { position: absolute; width: 16px; height: 16px; fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; opacity: 0; transform: scale(.4); transition: opacity .25s, transform .35s var(--bx-feder); }
.bxa-punkt-name { white-space: nowrap; hyphens: none; font: 500 .74rem/1 var(--bx-font-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--bx-text-2); }
.ist-aktiv .bxa-punkt { border-color: var(--bx-akzent); color: var(--bx-akzent-tief); transform: scale(1.08); box-shadow: 0 0 0 5px rgba(14, 143, 138, .12); }
.ist-aktiv .bxa-punkt-name { color: var(--bx-text); }
.ist-fertig .bxa-punkt { background: var(--bx-akzent-tief); border-color: var(--bx-akzent-tief); }
.ist-fertig .bxa-punkt b { opacity: 0; }
.ist-fertig .bxa-punkt svg { opacity: 1; transform: none; }
.bxa-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Schritte */
.bxa-schritt { border: 0; padding: 0; margin: 0; min-width: 0; }
.bxa-frage { font: 700 clamp(1.4rem, 1.1rem + 1.2vw, 2rem)/1.15 var(--bx-font-titel); letter-spacing: -.02em; padding: 0; margin-bottom: 6px; color: var(--bx-text); text-wrap: balance; }
.bxa-hilfe { color: var(--bx-text-2); margin: 0 0 18px; }

/* Themen-Kacheln */
.bxa-kacheln { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.bxa-kachel { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; min-width: 0; min-height: 118px; padding: 16px; border-radius: 18px; border: 1px solid var(--bx-linie); background: var(--bx-grund); color: var(--bx-text); text-align: center; cursor: pointer; transition: transform .35s var(--bx-feder), border-color .2s, background .25s, box-shadow .25s; }
.bxa-kachel:hover { transform: translateY(-3px); border-color: rgba(14, 143, 138, .45); box-shadow: 0 14px 28px -18px rgba(21, 37, 46, .4); }
.bxa-kachel:active { transform: translateY(1px) scale(.97); }
.bxa-kachel-text b { display: block; font: 600 1rem/1.25 var(--bx-font-text); }
.bxa-kachel-text small { display: block; margin-top: 3px; font-size: .8rem; line-height: 1.3; color: var(--bx-text-2); }
.bxa-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(14, 143, 138, .1); transition: background .25s, transform .4s var(--bx-feder); }
.bxa-icon svg { width: 22px; height: 22px; fill: var(--bx-akzent-tief); transition: fill .25s; }
.bxa-check { position: absolute; top: 12px; right: 12px; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: var(--bx-akzent-tief); opacity: 0; transform: scale(.3); transition: opacity .2s, transform .4s var(--bx-feder); }
.bxa-check svg { width: 13px; height: 13px; fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.bxa-kachel[aria-pressed="true"] { background: linear-gradient(160deg, rgba(14, 143, 138, .12), rgba(14, 143, 138, .03) 70%); border-color: var(--bx-akzent); box-shadow: 0 0 0 1px var(--bx-akzent) inset, 0 16px 30px -20px rgba(10, 110, 106, .6); }
.bxa-kachel[aria-pressed="true"] .bxa-icon { background: var(--bx-akzent-tief); transform: rotate(-6deg) scale(1.06); }
.bxa-kachel[aria-pressed="true"] .bxa-icon svg { fill: #fff; }
.bxa-kachel[aria-pressed="true"] .bxa-check, .bxa-offen[aria-pressed="true"] .bxa-check { opacity: 1; transform: none; }
.bxa-offen { position: relative; display: flex; align-items: center; gap: 10px; width: 100%; min-height: 48px; justify-content: center; margin-top: 10px; padding: 10px 44px; border-radius: 14px; border: 1px dashed #C7D4D2; background: none; color: var(--bx-text-2); font: 500 .95rem/1.2 var(--bx-font-text); text-align: center; text-wrap: balance; cursor: pointer; transition: border-color .2s, color .2s, background .2s; }
.bxa-nur-schmal { display: none; }
.bxa-offen .bxa-check { top: 50%; left: 14px; right: auto; margin-top: -11px; }
.bxa-offen:hover { border-color: var(--bx-akzent); color: var(--bx-text); }
.bxa-offen[aria-pressed="true"] { border-style: solid; border-color: var(--bx-akzent); background: rgba(14, 143, 138, .06); color: var(--bx-text); }

/* Fragen in Schritt 2 */
.bxa-fragen { display: grid; gap: 4px; }
.bxa-block { animation: bxa-rein .5s var(--bx-ease) both; animation-delay: calc(var(--i, 0) * 60ms); }
.bxa-unterfrage { margin: 16px 0 10px; font-weight: 600; color: var(--bx-text); }
.bxa-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bxa-chip { min-height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--bx-linie); background: var(--bx-flaeche); color: var(--bx-text); font: 500 .95rem/1.2 var(--bx-font-text); cursor: pointer; transition: transform .3s var(--bx-feder), border-color .2s, background .2s, color .2s, box-shadow .2s; }
.bxa-chip:hover { border-color: rgba(14, 143, 138, .5); }
.bxa-chip:active { transform: scale(.95); }
.bxa-chip[aria-checked="true"] { background: var(--bx-text); border-color: var(--bx-text); color: #fff; box-shadow: 0 8px 18px -10px rgba(21, 37, 46, .6); }

/* Felder */
.bxa-feld { display: block; margin-top: 16px; }
.bxa-feld--eng { margin-top: 0; }
.bxa-feld > span { display: block; margin-bottom: 6px; font-weight: 600; font-size: .92rem; }
.bxa-feld input, .bxa-feld textarea { width: 100%; min-height: 50px; padding: 13px 16px; border-radius: 14px; border: 1px solid var(--bx-linie); background: var(--bx-grund); color: var(--bx-text); font: 400 1rem/1.4 var(--bx-font-text); transition: border-color .2s, box-shadow .2s, background .2s; }
.bxa-feld input:focus, .bxa-feld textarea:focus { outline: none; border-color: var(--bx-akzent); background: var(--bx-flaeche); box-shadow: 0 0 0 4px rgba(14, 143, 138, .14); }
.bxa-reihe { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
.bxa-falle { position: absolute !important; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.bxa-hinweis { margin-top: 16px; font-size: .85rem; color: var(--bx-text-2); }
.bxa-fehler { min-height: 1.4em; margin-top: 10px; color: #B42318; font-weight: 600; font-size: .92rem; }
.bxa-fehler:empty { min-height: 0; margin: 0; }

/* Navigation */
.bxa-nav { display: flex; justify-content: space-between; gap: 12px; margin-top: 28px; }
.bxa-weiter { min-width: 190px; position: relative; transition: transform .35s var(--bx-feder), min-width .45s var(--bx-ease), width .45s var(--bx-ease), color .2s; }
.bxa-weiter.ist-laden { color: transparent; pointer-events: none; }
.bxa-weiter.ist-laden::after { content: ""; position: absolute; width: 20px; height: 20px; border-radius: 50%; border: 2px solid rgba(255, 255, 255, .45); border-top-color: #fff; animation: bxa-dreh .8s linear infinite; }
.bxa-weiter.ist-fertig { min-width: 52px; width: 52px; padding: 0; color: transparent; }

/* Zusammenfassung als Live-Ticket: schreibt sich beim Ausfüllen selbst, unten ein Abrisskupon */
@property --bxa-voll { syntax: "<number>"; inherits: true; initial-value: 0; }
.bxa-zs { --bxa-voll: 0; position: sticky; top: 96px; min-width: 0; color: #E7EEF0; filter: drop-shadow(0 26px 32px rgba(21, 37, 46, .32)); transition: --bxa-voll .8s var(--bx-ease); }
.bxa-zs-ticket, .bxa-zs-stub { position: relative; isolation: isolate; overflow: hidden; background-color: #13232B; }
.bxa-zs-ticket { padding: 22px 22px 24px; border-radius: var(--bx-radius) var(--bx-radius) 0 0;
  background-image: radial-gradient(120% 80% at 100% 0%, rgba(14, 143, 138, .42), transparent 62%);
  -webkit-mask: radial-gradient(circle 12px at 0 100%, #0000 97%, #000) 0 0 / 51% 100% no-repeat, radial-gradient(circle 12px at 100% 100%, #0000 97%, #000) 100% 0 / 51% 100% no-repeat;
  mask: radial-gradient(circle 12px at 0 100%, #0000 97%, #000) 0 0 / 51% 100% no-repeat, radial-gradient(circle 12px at 100% 100%, #0000 97%, #000) 100% 0 / 51% 100% no-repeat; }
.bxa-zs-ticket::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(rgba(255, 255, 255, .1) 1px, transparent 1.5px) 0 0 / 14px 14px; -webkit-mask: linear-gradient(200deg, #000, transparent 60%); mask: linear-gradient(200deg, #000, transparent 60%); }
.bxa-zs-stub { padding: 20px 22px; border-radius: 0 0 var(--bx-radius) var(--bx-radius);
  background-image: radial-gradient(90% 130% at 0% 100%, rgba(224, 152, 46, .24), transparent 62%);
  -webkit-mask: radial-gradient(circle 12px at 0 0, #0000 97%, #000) 0 0 / 51% 100% no-repeat, radial-gradient(circle 12px at 100% 0, #0000 97%, #000) 100% 0 / 51% 100% no-repeat;
  mask: radial-gradient(circle 12px at 0 0, #0000 97%, #000) 0 0 / 51% 100% no-repeat, radial-gradient(circle 12px at 100% 0, #0000 97%, #000) 100% 0 / 51% 100% no-repeat; }
.bxa-zs-stub::before { content: ""; position: absolute; left: 20px; right: 20px; top: -1px; border-top: 2px dashed rgba(255, 255, 255, .18); }
.bxa-zs-kopf { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.bxa-zs-titel { margin: 0; font: 500 .74rem/1 var(--bx-font-mono); letter-spacing: .12em; text-transform: uppercase; color: #5FD0C9; }
.bxa-zs-ring { position: relative; flex-shrink: 0; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: conic-gradient(var(--bx-akzent-2) 0turn, #5FD0C9 calc(var(--bxa-voll) * 1turn), rgba(255, 255, 255, .1) 0); }
.bxa-zs-ring::before { content: ""; position: absolute; inset: 4px; border-radius: 50%; background: #13232B; }
.bxa-zs-ring b { position: relative; font: 600 .7rem/1 var(--bx-font-mono); color: #fff; }
.bxa-zs-spur { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; gap: 18px; }
.bxa-zs-slot { position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 12px; list-style: none !important; margin: 0; }
.bxa-zs-slot:not(:last-child)::before, .bxa-zs-slot:not(:last-child)::after { content: ""; position: absolute; left: 11px; top: 28px; bottom: -14px; width: 2px; border-radius: 2px; background: rgba(255, 255, 255, .12); }
.bxa-zs-slot:not(:last-child)::after { background: linear-gradient(#5FD0C9, var(--bx-akzent-2)); transform: scaleY(0); transform-origin: top; transition: transform .6s var(--bx-ease); }
.bxa-zs-slot.ist-fertig:not(:last-child)::after { transform: none; }
.bxa-zs-marke { position: relative; z-index: 1; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: #13232B; border: 2px solid rgba(255, 255, 255, .22); transition: background .3s, border-color .3s, transform .45s var(--bx-feder); }
.bxa-zs-marke svg { width: 13px; height: 13px; fill: none; stroke: #0F1C23; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; opacity: 0; transform: scale(.3); transition: opacity .25s, transform .4s var(--bx-feder); }
.bxa-zs-slot.ist-aktiv .bxa-zs-marke { border-color: #5FD0C9; animation: bxa-puls 2s ease-out infinite; }
.bxa-zs-slot.ist-fertig .bxa-zs-marke { background: #5FD0C9; border-color: #5FD0C9; transform: scale(1.08); }
.bxa-zs-slot.ist-fertig .bxa-zs-marke svg { opacity: 1; transform: none; }
.bxa-zs-slot-text { min-width: 0; padding-top: 4px; }
.bxa-zs-slot small { display: block; margin-bottom: 8px; font: 500 .68rem/1 var(--bx-font-mono); letter-spacing: .12em; text-transform: uppercase; color: #7F9399; transition: color .3s; }
.bxa-zs-slot.ist-aktiv small, .bxa-zs-slot.ist-fertig small { color: #fff; }
.bxa-zs-leer { margin: 0; font-size: .86rem; line-height: 1.45; color: #8FA2A8; }
.bxa-zs-slot.ist-aktiv .bxa-zs-leer::after { content: ""; display: inline-block; width: 7px; height: 1em; margin-left: 4px; vertical-align: -2px; border-radius: 1px; background: #5FD0C9; animation: bxa-cursor 1.1s steps(1) infinite; }
.bxa-zs-themen { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 6px; }
.bxa-zs-themen:empty, .bxa-zs-antworten:empty, .bxa-zs-wert:empty { display: none; }
.bxa-zs-tag { list-style: none !important; margin: 0; padding: 7px 12px; border-radius: 999px; background: rgba(95, 208, 201, .14); box-shadow: inset 0 0 0 1px rgba(95, 208, 201, .28); color: #fff; font: 600 .85rem/1 var(--bx-font-text); animation: bxa-pop .45s var(--bx-feder) both; }
.bxa-zs-antworten { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; gap: 8px; }
.bxa-zs-antworten li { list-style: none !important; margin: 0; padding: 8px 10px; border-radius: 10px; background: rgba(255, 255, 255, .05); animation: bxa-rein .4s var(--bx-ease) both; }
.bxa-zs-antworten small { margin-bottom: 3px; font: 400 .74rem/1.3 var(--bx-font-text); letter-spacing: 0; text-transform: none; color: #8FA2A8; }
.bxa-zs-antworten span { display: block; font-weight: 600; font-size: .9rem; color: #fff; overflow-wrap: anywhere; }
.bxa-zs-wert { margin: 0; font-weight: 600; color: #fff; overflow-wrap: anywhere; animation: bxa-rein .4s var(--bx-ease) both; }
.bxa-zs-antwort { margin: 0; display: flex; align-items: center; gap: 14px; }
.bxa-zs-antwort small { display: block; margin-bottom: 6px; font: 500 .68rem/1 var(--bx-font-mono); letter-spacing: .12em; text-transform: uppercase; color: #8FA2A8; }
.bxa-zs-antwort b { display: block; font: 600 1.02rem/1.25 var(--bx-font-text); color: #fff; text-wrap: balance; }
.bxa-zs-punkt { position: relative; width: 10px; height: 10px; border-radius: 50%; background: #3DDC97; flex-shrink: 0; }
.bxa-zs-punkt::after { content: ""; position: absolute; inset: -5px; border-radius: 50%; border: 2px solid #3DDC97; opacity: 0; animation: bxa-funk 2.2s ease-out infinite; }
.bxa-zs-tel { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; margin-top: 16px; padding: 0 14px; border-radius: 12px; background: rgba(255, 255, 255, .07); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 3px 0 rgba(0, 0, 0, .35); color: #fff !important; font-weight: 600; font-size: .92rem; white-space: nowrap; text-decoration: none; transition: background .2s, transform .15s, box-shadow .15s; }
.bxa-zs-tel:hover { background: rgba(95, 208, 201, .16); }
.bxa-zs-tel:active { transform: translateY(3px); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 0 0 rgba(0, 0, 0, .35); }
.bxa-zs-tel:focus-visible { outline: 3px solid #5FD0C9; outline-offset: 3px; }
.bxa-zs-tel svg { display: block; width: 18px; height: 18px; fill: none; stroke: #5FD0C9; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
@keyframes bxa-puls { 0% { box-shadow: 0 0 0 0 rgba(95, 208, 201, .55); } 70%, 100% { box-shadow: 0 0 0 9px rgba(95, 208, 201, 0); } }
@keyframes bxa-funk { 0% { opacity: .7; transform: scale(.6); } 80%, 100% { opacity: 0; transform: scale(1.6); } }
@keyframes bxa-cursor { 50% { opacity: 0; } }

/* Erfolg */
.bxa-erfolg { max-width: 720px; margin-inline: auto; text-align: center; padding: clamp(28px, 5vw, 56px) clamp(18px, 4vw, 40px); background: var(--bx-flaeche); border: 1px solid var(--bx-linie); border-radius: var(--bx-radius); box-shadow: var(--bx-schatten); animation: bxa-rein .7s var(--bx-ease) both; outline: none; }
.bxa-erfolg > * + * { margin-top: 12px; }
.bxa-erfolg .bx-lead { margin-inline: auto; }
.bxa-haken svg { width: 72px; height: 72px; margin: 0 auto 6px; display: block; }
.bxa-haken circle { fill: none; stroke: var(--bx-akzent); stroke-width: 2.5; stroke-dasharray: 151; stroke-dashoffset: 151; animation: bxa-zeichnen .7s var(--bx-ease) .1s forwards; }
.bxa-haken path { fill: none; stroke: var(--bx-akzent); stroke-width: 3.5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 36; stroke-dashoffset: 36; animation: bxa-zeichnen .45s var(--bx-ease) .7s forwards; }
.bxa-zusammen { font: 500 .8rem/1.4 var(--bx-font-mono); color: var(--bx-text-2); letter-spacing: .05em; }
.bxa-eilig a { font-weight: 700; }

@media (prefers-reduced-motion: no-preference) {
  .bxa-form::before { animation: bxa-kreisen 9s linear infinite; }
  .bxa-vor { animation: bxa-von-rechts .45s var(--bx-ease) both; }
  .bxa-zurueck-anim { animation: bxa-von-links .45s var(--bx-ease) both; }
}
@keyframes bxa-kreisen { to { --bxa-winkel: 360deg; } }
@keyframes bxa-von-rechts { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: none; } }
@keyframes bxa-von-links { from { opacity: 0; transform: translateX(-28px); } to { opacity: 1; transform: none; } }
@keyframes bxa-rein { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes bxa-pop { from { opacity: 0; transform: scale(.6); } to { opacity: 1; transform: none; } }
@keyframes bxa-zeichnen { to { stroke-dashoffset: 0; } }
@keyframes bxa-dreh { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .bxa-block, .bxa-erfolg, .bxa-zs-tag, .bxa-zs-antworten li, .bxa-zs-wert, .bxa-zs-marke, .bxa-zs-punkt::after, .bxa-zs-leer::after { animation: none !important; }
  .bxa-haken circle, .bxa-haken path { animation: none; stroke-dashoffset: 0; }
}
@media (max-width: 900px) {
  .bxa-huelle { grid-template-columns: 1fr; }
  .bxa-zs { position: static; order: -1; }
  .bxa-zs-ticket { padding: 16px 16px 20px; }
  .bxa-zs-kopf { margin-bottom: 16px; }
  .bxa-zs-ring { width: 42px; height: 42px; }
  .bxa-zs-spur { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .bxa-zs-slot { grid-template-columns: 1fr; justify-items: center; gap: 8px; text-align: center; }
  .bxa-zs-slot:not(:last-child)::before, .bxa-zs-slot:not(:last-child)::after { left: calc(50% + 16px); right: auto; top: 11px; bottom: auto; width: calc(100% - 24px); height: 2px; }
  .bxa-zs-slot:not(:last-child)::after { background: linear-gradient(90deg, #5FD0C9, var(--bx-akzent-2)); transform: scaleX(0); transform-origin: left; }
  .bxa-schritte { display: none; }
  .bxa-zs-slot.ist-fertig:not(:last-child)::after { transform: none; }
  .bxa-zs-slot-text { padding-top: 0; }
  .bxa-zs-slot small { margin-bottom: 0; }
  .bxa-zs-leer, .bxa-zs-themen, .bxa-zs-antworten, .bxa-zs-wert, .bxa-zs-tel { display: none; }
  .bxa-zs-stub { padding: 16px; }
  .bxa-nur-breit { display: none; }
  .bxa-nur-schmal { display: inline; }
}
@media (max-width: 640px) {
  .bxa-kacheln { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bxa-kachel { min-height: 104px; padding: 14px; }
  .bxa-kachel-text small { display: none; }
  .bxa-reihe { grid-template-columns: 1fr; }
  .bxa-punkt-name { display: none; }
  .bxa-schritte li.ist-aktiv .bxa-punkt-name { display: block; }
  .bxa-nav { flex-direction: column-reverse; }
  .bxa-nav .bx-knopf { width: 100%; }
}
