/* =====================================================================
   Online-Anmeldung, geführter Weg (/anmelden). Ergänzt style.css + pages.css,
   wird nur auf dieser Seite geladen. Mobile-first, logische Abstände (RTL-fähig).
   ===================================================================== */
.az{padding-block-end:96px}
.az-head{margin-block-end:18px}
.az-head h1{font-size:calc(30px * var(--font-scale,1));line-height:1.1;margin-block:0 8px}
.az-head h1 .accent{background:linear-gradient(135deg,var(--accent-g2,var(--brand-accent)),var(--accent-g3,var(--pink)));-webkit-background-clip:text;background-clip:text;color:transparent}

/* Schritt-Leiste */
.az-steps{list-style:none;margin:0 0 20px;padding:0;display:flex;gap:4px;counter-reset:none}
.az-steps li{flex:1 1 0;min-inline-size:0}
.az-steps button{inline-size:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding-block:8px;padding-inline:3px;border-radius:999px;border:1px solid var(--home-line);background:rgba(var(--glass,255,255,255),.04);color:var(--home-muted);font:inherit;font-weight:800;font-size:calc(12.5px * var(--font-scale,1));cursor:pointer;min-block-size:44px}
.az-steps button:disabled{cursor:default;opacity:.55}
.az-steps b{inline-size:24px;block-size:24px;flex:none;border-radius:50%;display:grid;place-items:center;background:rgba(var(--glass,255,255,255),.1);color:var(--ink,#fff);font-size:12px}
.az-steps span{display:none;min-inline-size:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.az-steps li.is-done button{color:var(--ink,#fff);border-color:rgba(74,222,128,.5)}
.az-steps li.is-done b{background:#22c55e;color:#06240f}
.az-steps li.is-active{flex:3 1 0}
.az-steps li.is-active button{background:linear-gradient(135deg,var(--brand-accent),var(--pink));border-color:transparent;color:#1a0f08}
.az-steps li.is-active b{background:rgba(26,15,8,.85);color:#fff}
.az-steps li.is-active span{display:inline}
.az-steps button:focus-visible{outline:2px solid var(--ink,#fff);outline-offset:2px}

/* Schritte: mit JavaScript ist immer nur einer sichtbar, ohne stehen alle untereinander */
.az-step{padding:0;margin-block-end:28px}
.js .az-step{display:none;margin-block-end:0}
.js .az-step.is-active{display:block;animation:az-in .28s ease both}
@keyframes az-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.js .az-step.is-active{animation:none}}
html:not(.js) .az-actions,html:not(.js) .az-steps{display:none}
.az-step h2{display:flex;align-items:center;gap:12px;font-size:calc(22px * var(--font-scale,1));line-height:1.2;margin-block:0 6px;outline:0}
.az-num{inline-size:36px;block-size:36px;flex:none;border-radius:calc(var(--rk,1px) * 11);display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-accent),var(--brand-accent-dark));color:#1a0f08;font-weight:900;font-size:16px}
.az-sub{margin-block:0 16px;color:var(--home-muted);font-size:calc(14.5px * var(--font-scale,1))}

/* Auswahl-Karten */
.az-cards{display:grid;gap:10px}
.az-cards-way{grid-template-columns:repeat(2,minmax(0,1fr))}
.az-cards-class{grid-template-columns:repeat(2,minmax(0,1fr))}
.az-cards-branch{grid-template-columns:repeat(2,minmax(0,1fr))}
.az-card{position:relative;display:block;cursor:pointer}
.az-card input{position:absolute;opacity:0;inline-size:1px;block-size:1px}
.az-card-in{position:relative;display:grid;gap:4px;align-content:start;block-size:100%;padding:14px;border-radius:calc(var(--rk,1px) * 18);border:1.5px solid var(--home-line-strong);background:linear-gradient(150deg,var(--home-card),var(--home-panel));transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;overflow:hidden}
.az-card-in::after{content:"";position:absolute;inset-block-start:10px;inset-inline-end:10px;inline-size:22px;block-size:22px;border-radius:50%;border:1.5px solid var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.5))}
.az-card:hover .az-card-in{border-color:var(--brand-accent);transform:translateY(-2px)}
.az-card input:focus-visible+.az-card-in{outline:2px solid var(--ink,#fff);outline-offset:2px}
.az-card input:checked+.az-card-in{border-color:var(--brand-accent);box-shadow:0 0 0 2px var(--brand-accent),0 18px 34px -16px rgba(255,140,0,.65);background:linear-gradient(150deg,#14507f,#0b3458)}
.az-card input:checked+.az-card-in::after{border-color:transparent;background:var(--brand-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a0f08' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/13px no-repeat}
.az-card strong{font-size:calc(15.5px * var(--font-scale,1));font-weight:900;line-height:1.25;padding-inline-end:26px}
.az-card small{font-size:calc(12.5px * var(--font-scale,1));color:var(--home-muted);line-height:1.4}
.az-ico{inline-size:38px;block-size:38px;border-radius:calc(var(--rk,1px) * 11);display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-accent),var(--pink));margin-block-end:6px}
.az-ico svg{inline-size:19px;block-size:19px;color:#1a0f08}
.az-code{display:inline-block;justify-self:start;padding-block:4px;padding-inline:11px;border-radius:calc(var(--rk,1px) * 9);background:linear-gradient(135deg,var(--brand-accent),var(--pink));color:#1a0f08;font-weight:900;font-size:calc(15px * var(--font-scale,1));letter-spacing:.02em;white-space:nowrap}
.az-class .az-card-in{gap:8px}
.az-card.is-blocked{cursor:not-allowed}
.az-card.is-blocked .az-card-in{opacity:.45;border-style:dashed;transform:none;border-color:var(--home-line-strong)}
.az-why{font-style:normal;font-size:calc(11.5px * var(--font-scale,1));font-weight:800;color:var(--accent-ink-soft,#ffcf99)}
.az-cat{border:0;padding:0;margin:0 0 16px;min-inline-size:0}
.az-cat legend{padding:0;margin-block-end:8px;font-size:calc(11px * var(--font-scale,1));font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink,var(--brand-accent))}
/* Schritt 2: erst Bereichs-Kacheln mit Bild, dann die Klassen des angetippten Bereichs */
.az-kats{display:grid;gap:10px}
html:not(.js) .az-kats,html:not(.js) .az-more{display:none}
.js .az-step-class.has-open .az-kats{display:none}
.js .az-step-class[data-tiles="1"] .az-cat{display:none}
.js .az-step-class[data-tiles="1"] .az-cat.is-open{display:block;animation:az-in .25s ease both}
.js .az-step-class:not(.has-open) .az-more{display:none}
.az-more-price{margin-block:14px 0}
.az-kat{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr);align-items:stretch;gap:0;padding:0;inline-size:100%;min-block-size:68px;text-align:start;font:inherit;color:inherit;cursor:pointer;border-radius:calc(var(--rk,1px) * 18);border:1.5px solid var(--home-line-strong);background:linear-gradient(150deg,var(--home-card),var(--home-panel));overflow:hidden;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.az-kat:hover{border-color:var(--brand-accent);transform:translateY(-2px)}
.az-kat:focus-visible{outline:2px solid var(--ink,#fff);outline-offset:2px}
.az-kat-pic{display:grid;place-items:center;background:radial-gradient(120px 90px at 30% 20%,rgba(255,140,0,.45),transparent 70%),linear-gradient(135deg,#12466f,#0a2c4a);color:#ffd7a3;overflow:hidden}
.az-kat-pic svg{inline-size:44px;block-size:44px;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.az-kat-pic img{inline-size:100%;block-size:100%;object-fit:cover}
.az-kat-text{display:grid;gap:2px;align-content:center;padding-block:9px;padding-inline:14px 44px;min-inline-size:0}
.az-kat-text strong{font-size:calc(16.5px * var(--font-scale,1));font-weight:900;line-height:1.2}
.az-kat-text small{font-size:calc(12.5px * var(--font-scale,1));color:var(--home-muted);line-height:1.4}
/* Klassenliste steht nicht mehr auf der Kachel – nur die gewählte Klasse (leer = ausgeblendet) */
.az-kat-text small:empty{display:none}
.az-kat::after{content:"›";position:absolute;inset-block-start:50%;inset-inline-end:14px;transform:translateY(-50%);inline-size:26px;block-size:26px;border-radius:50%;display:grid;place-items:center;background:rgba(var(--glass,255,255,255),.1);color:var(--ink,#fff);font-weight:900;font-size:17px;line-height:1}
.az-kat.is-picked{border-color:var(--brand-accent);box-shadow:0 0 0 2px var(--brand-accent),0 18px 34px -16px rgba(255,140,0,.65)}
.az-kat.is-picked .az-kat-text small{color:var(--accent-ink-soft,#ffcf99);font-weight:900}
.az-kat.is-picked::after{content:"";background:var(--brand-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a0f08' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/14px no-repeat}
.az-more{margin-block:14px 0}
.az-more-btn{display:inline-flex;align-items:center;min-block-size:44px;padding-block:8px;padding-inline:16px;border-radius:999px;border:1.5px dashed var(--home-line-strong);background:transparent;color:var(--home-text,#fff);font:inherit;font-weight:800;font-size:calc(13.5px * var(--font-scale,1));cursor:pointer}
.az-more-btn:hover,.az-more-btn:focus-visible{border-color:var(--brand-accent);color:var(--accent-ink,var(--brand-accent))}
.az-branch .az-card-in{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}
.az-branch .az-ico{margin:0}
.az-plz{display:grid;gap:6px;margin-block-end:14px;max-inline-size:520px}
.az-plz label{font-weight:700;font-size:calc(14px * var(--font-scale,1));color:var(--home-text,#fff)}
.az-plz input{inline-size:140px;max-inline-size:100%;padding:11px 14px;border-radius:calc(var(--rk,1px) * 12);border:1.5px solid var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.5));color:var(--home-text,#fff);font:inherit;font-size:calc(18px * var(--font-scale,1));font-weight:800;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.az-plz input:focus-visible{outline:2px solid var(--ink,#fff);outline-offset:2px;border-color:var(--brand-accent)}
.az-plz-out{margin:0;min-block-size:1.4em;color:var(--home-text,#fff);font-size:calc(14px * var(--font-scale,1));line-height:1.45;font-weight:600}
.az-plz-out.is-check{color:var(--home-muted)}
.az-near{justify-self:start;padding:3px 9px;border-radius:999px;background:var(--brand-accent);color:#1a0f08;font-style:normal;font-weight:900;font-size:calc(11px * var(--font-scale,1));letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.az-near[hidden],.az-plz[hidden]{display:none}
.az-branch.is-near .az-card-in{border-color:var(--brand-accent)}
.az-branch .az-near{grid-column:1/-1}
.az-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-block-start:20px}
.az-actions .btn{border:0;cursor:pointer;font-family:inherit;padding-block:13px;min-block-size:48px;line-height:1.3}
.az-actions .btn-ghost{border:1px solid var(--home-line-strong)}
.az-actions .btn[hidden]{display:none}
.az-actions .btn-primary{margin-inline-start:auto}
.az-error{margin-block:14px 0}
.az-note{margin-block:12px 0;color:var(--home-muted);font-size:calc(12.5px * var(--font-scale,1));line-height:1.5}

/* Schritt Preis */
.az-tune{display:grid;gap:8px;margin-block-end:14px}
.az-tune-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding-block:10px;padding-inline:12px;border-radius:calc(var(--rk,1px) * 14);border:1px solid var(--home-line);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.4))}
.az-tune-row[hidden]{display:none}
.az-range{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-inline-size:0;font-size:calc(12.5px * var(--font-scale,1));font-weight:700;color:var(--home-muted)}
.az-range input{flex:1 1 auto;min-inline-size:0;block-size:28px;accent-color:var(--brand-accent)}
.az-range output{min-inline-size:30px;text-align:end;color:var(--ink,#fff);font-weight:900;font-size:calc(15px * var(--font-scale,1));font-variant-numeric:tabular-nums}
.az-sim{margin:0}
.az-breakdown{display:grid;gap:14px}
.az-quote{inline-size:100%;border-collapse:collapse;border-radius:calc(var(--rk,1px) * 16);overflow:hidden;background:linear-gradient(150deg,var(--home-card),var(--home-panel));border:1px solid var(--home-line-strong);font-size:calc(14px * var(--font-scale,1))}
.az-quote caption{text-align:start;padding-block:0 8px;font-weight:800;font-size:calc(14.5px * var(--font-scale,1))}
.az-quote caption .az-code{margin-inline-end:6px;font-size:calc(13px * var(--font-scale,1))}
.az-quote th,.az-quote td{padding-block:9px;padding-inline:14px;border-block-end:1px solid var(--home-line);text-align:start;font-weight:600;vertical-align:top}
.az-quote th small{display:block;font-weight:600;color:var(--home-muted);font-size:calc(12px * var(--font-scale,1))}
.az-quote td{text-align:end;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}
.az-quote tfoot th,.az-quote tfoot td{border-block-end:0;font-weight:900;background:var(--field-bg,rgba(var(--home-tint,3,20,36),.45))}
.az-total{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 18px;margin:0;padding-block:16px;padding-inline:18px;border-radius:calc(var(--rk,1px) * 18);background:linear-gradient(135deg,var(--brand-accent),var(--pink));color:#1a0f08;font-weight:800}
.az-total strong{font-size:calc(28px * var(--font-scale,1));font-weight:900;font-variant-numeric:tabular-nums;line-height:1}
.az-total .az-plus{flex-basis:100%;font-size:calc(13px * var(--font-scale,1));font-weight:700;line-height:1.35;text-align:end} /* Hinweis direkt an der Gesamtsumme */
.az-request{padding-block:16px;padding-inline:18px;border-radius:calc(var(--rk,1px) * 18);background:rgba(255,140,0,.12);border:1px solid rgba(255,140,0,.4)}
.az-request strong{font-size:calc(18px * var(--font-scale,1))}
.az-request p{margin-block:6px 0;color:var(--home-muted)}

/* Anmeldeformular (Schritte 5–7) */
.az-panel{margin-block-end:12px;padding:16px;border-radius:calc(var(--rk,1px) * 18);border:1px solid var(--home-line-strong);background:linear-gradient(150deg,var(--home-card),var(--home-panel))}
.az-panel h3{margin-block:0 6px;font-size:calc(17px * var(--font-scale,1))}
.az-panel .az-sub{margin-block-end:12px}
.az-panel .form-row{gap:0 14px;align-items:start}
.az-panel .field{margin-block-end:10px}
.az-panel .field input,.az-panel .field select,.az-panel .field textarea{inline-size:100%;min-block-size:46px;padding-block:9px;padding-inline:12px;border-radius:12px;border:1px solid var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.55));color:var(--home-text,#fff);font:inherit;font-size:16px}
.az-panel .field textarea{min-block-size:88px;resize:vertical}
.az-panel .field input:focus,.az-panel .field select:focus,.az-panel .field textarea:focus{outline:2px solid var(--brand-accent);outline-offset:1px;border-color:transparent}
.az-panel .field input[type=date]{color-scheme:dark}
.az-panel .field select{appearance:auto;color-scheme:dark}
.az-panel>.field:last-child,.az-panel>.az-if:last-child .field:last-child{margin-block-end:0}
.az-if[hidden]{display:none}
.js .az-nojs{display:none}
.az-mode{margin-block-end:12px;padding:14px 16px;border-radius:calc(var(--rk,1px) * 18);border:1.5px solid var(--home-line-strong);background:linear-gradient(150deg,var(--home-card),var(--home-panel))}
.az-mode[hidden]{display:none}
.az-mode-title{display:block;margin-block-end:4px;font-size:calc(15px * var(--font-scale,1))}
.az-mode-info{margin:0 0 10px;font-size:calc(13.5px * var(--font-scale,1));color:var(--home-muted)}
.az-mode-btns{display:flex;flex-wrap:wrap;gap:8px}
.az-mode-btns .btn{min-block-size:44px}
.az-mode-btns .btn.is-on{background:linear-gradient(135deg,var(--brand-accent,#ff8c00),var(--pink,#ff4d8d));color:#1a0f08;border-color:transparent}
.az-mode-btns [hidden]{display:none}
.az-reg[data-mode="chat"] .az-step[data-step="5"] .az-panel,.az-reg[data-mode="chat"] .az-step[data-step="6"] .az-panel{opacity:.55}
.az-yn{border:0;padding:0;margin:0 0 12px;min-inline-size:0}
.az-yn legend{padding:0;margin-block-end:8px;font-weight:800;font-size:calc(13.5px * var(--font-scale,1));line-height:1.4}
.az-yn .topic-chip span{min-inline-size:76px;text-align:center;padding-block:11px}
.az-yn[aria-describedby] .topic-chip span{border-color:#ff6b6b}
.az-panel .check{margin-block:6px 4px;line-height:1.5}
.az-reg .form-hint{margin-block:4px 0}
.az-review-card dl{display:grid;gap:8px 14px;margin:0}
.az-review-card dt{font-size:calc(11px * var(--font-scale,1));font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink,var(--brand-accent))}
.az-review-card dd{margin:1px 0 0;font-weight:700;overflow-wrap:anywhere;white-space:pre-line}
.az-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-block-end:10px}
.az-review-head h3{margin:0}
.az-edit{min-block-size:46px;padding-inline:14px;border-radius:999px;border:1px solid var(--home-line-strong);background:rgba(var(--glass,255,255,255),.06);color:var(--home-text,var(--ink,#fff));font:inherit;font-weight:800;font-size:calc(12.5px * var(--font-scale,1));cursor:pointer}
.az-edit:hover,.az-edit:focus-visible{border-color:var(--brand-accent);color:var(--accent-ink,var(--brand-accent))}
.az-review-line{margin:0 0 8px;color:var(--home-muted)}
.az-review-line strong{color:var(--home-text,#fff);font-size:calc(17px * var(--font-scale,1))}
.az-review-price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0;padding-block:12px;padding-inline:14px;border-radius:calc(var(--rk,1px) * 14);background:linear-gradient(135deg,var(--brand-accent),var(--pink));color:#1a0f08;font-weight:800}
.az-review-price strong{font-size:calc(22px * var(--font-scale,1));font-weight:900;font-variant-numeric:tabular-nums}
.az-legal .az-note{margin-block-start:10px}
.az-legal a,.az-panel .check a{color:var(--accent-ink,var(--brand-accent))}
.az-submit[data-busy]{opacity:.6;cursor:progress}
#az-form-error{scroll-margin-top:90px}
/* Erfolgsseite */
.az-done-card{max-inline-size:640px;margin-inline:auto;padding:26px 20px;text-align:center;border-radius:var(--radius-l);border:1px solid var(--home-line-strong);background:linear-gradient(150deg,var(--home-card),var(--home-panel))}
.az-done-card h1{font-size:calc(30px * var(--font-scale,1));line-height:1.15;margin-block:4px 10px}
.az-done-nr{display:inline-block;margin-block:6px 16px;padding-block:8px;padding-inline:16px;border-radius:999px;background:rgba(255,140,0,.14);border:1px solid rgba(255,140,0,.45);font-weight:900;font-variant-numeric:tabular-nums}
.az-done-steps{display:grid;gap:8px;margin:0 0 20px;padding:0;list-style:none;counter-reset:d;text-align:start}
.az-done-steps li{counter-increment:d;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border-radius:calc(var(--rk,1px) * 14);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.4));border:1px solid var(--home-line);font-weight:700;font-size:calc(14px * var(--font-scale,1))}
.az-done-steps li::before{content:counter(d);inline-size:34px;block-size:34px;border-radius:calc(var(--rk,1px) * 10);display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-accent),var(--brand-accent-dark));color:#1a0f08;font-weight:900}
@media(min-width:640px){
  .az-row-street{grid-template-columns:minmax(0,1fr) 150px}
  .az-row-zip{grid-template-columns:150px minmax(0,1fr)}
  .az-panel{padding:20px}
  .az-review-card dl{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .az-review-card dl dt{grid-column:1}
  .az-review-card dl{grid-template-columns:220px minmax(0,1fr)}
  .az-review-card dd{grid-column:2;margin:0}
  .az-done-card{padding:40px 36px}
  .az-done-card h1{font-size:calc(40px * var(--font-scale,1))}
}
@media(min-width:980px){.az-reg .az-step{max-inline-size:860px}}

/* Mitlaufende Preisleiste */
.az-bar{position:fixed;inset-inline:0;inset-block-end:0;z-index:40;background:rgba(var(--header-tint,var(--home-tint,3,20,36)),.96);border-block-start:1px solid var(--home-line-strong);box-shadow:0 -14px 30px -18px rgba(0,0,0,.8);padding-block:10px;padding-block-end:calc(10px + env(safe-area-inset-bottom,0px))}
.az-bar[hidden]{display:none}
/* Seitenende: Fußzeile bleibt oberhalb der Preisleiste erreichbar (Höhe kommt aus anmelden.js, Rückfallwert ohne JS) */
body:has(.az-bar:not([hidden])){padding-block-end:calc(var(--az-bar-h,76px) + 12px)}
.az-bar-in{display:flex;align-items:center;justify-content:space-between;gap:14px}
.az-bar-sel{display:grid;min-inline-size:0}
.az-bar-sel b{font-size:calc(15px * var(--font-scale,1));font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.az-bar-sel small{color:var(--home-muted);font-size:calc(11.5px * var(--font-scale,1));line-height:1.3}
.az-bar-price{display:grid;justify-items:end;flex:none}
.az-bar-price small{font-size:calc(10.5px * var(--font-scale,1));font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink,var(--brand-accent))}
.az-bar-price strong{font-size:calc(22px * var(--font-scale,1));font-weight:900;font-variant-numeric:tabular-nums;line-height:1.1;white-space:nowrap}
.az-bar.is-loading .az-bar-price strong{opacity:.5}

@media(min-width:640px){
  .az-head h1{font-size:calc(40px * var(--font-scale,1))}
  .az-cards-way{grid-template-columns:repeat(4,minmax(0,1fr))}
  .az-kats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-inline-size:780px}
  .az-kat{grid-template-columns:96px minmax(0,1fr);min-block-size:88px}
  .az-kat-pic svg{inline-size:52px;block-size:52px}
  .az-kat-text strong{font-size:calc(18px * var(--font-scale,1))}
  .az-cards-class{grid-template-columns:repeat(4,minmax(0,1fr))}
  .az-cards-branch{grid-template-columns:repeat(3,minmax(0,1fr))}
  .az-card-in{padding:18px}
  .az-step h2{font-size:calc(28px * var(--font-scale,1))}
}
@media(min-width:980px){
  .az-steps span{display:inline}
  .az-steps li.is-active{flex:1 1 0}
  .az-head h1{font-size:calc(50px * var(--font-scale,1))}
  .az-cards-class{grid-template-columns:repeat(5,minmax(0,1fr))}
  .az-cards-branch{grid-template-columns:repeat(5,minmax(0,1fr))}
  .az-branch .az-card-in{grid-template-columns:minmax(0,1fr);justify-items:start}
  .az-breakdown{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .az-breakdown>.az-total,.az-breakdown>.az-note,.az-breakdown>.az-request,.az-breakdown>.form-alert{grid-column:1/-1}
  .az-breakdown>.az-quote:only-of-type{grid-column:1/-1;max-inline-size:640px}
  .az-breakdown:has(>.az-quote:only-of-type)>.az-total{max-inline-size:640px}
}

/* ===== v7 (03.10.2026): Kacheln kompakter – Weg (Schritt 1), Klassen (Schritt 2), Filialen (Schritt 3) =====
   Symbol bzw. Kürzel steht NEBEN dem Text statt darüber; der Auswahl-Kreis hat rechts seinen eigenen Platz
   (vorher lag er am Handy über langen Namen). Antipp-Fläche bleibt mindestens 48 px hoch. */
.az-card-in{padding:10px 12px;padding-inline-end:42px;min-block-size:48px;border-radius:calc(var(--rk,1px) * 14)}
.az-card-in::after{inset-block-start:50%;transform:translateY(-50%)}
.az-card:hover .az-card-in::after{transform:translateY(-50%)}
.az-card strong{padding-inline-end:0}
.az-ico{inline-size:32px;block-size:32px;margin-block-end:0;border-radius:calc(var(--rk,1px) * 9)}
.az-ico svg{inline-size:16px;block-size:16px}
/* Schritt 1: Weg – am Handy eine Kachel je Zeile */
.az-cards-way{grid-template-columns:minmax(0,1fr);gap:8px}
.az-way .az-card-in{grid-template-columns:auto minmax(0,1fr);column-gap:11px;row-gap:1px;align-items:center}
.az-way .az-ico{grid-row:span 2}
.az-way strong{align-self:end;font-size:calc(15px * var(--font-scale,1))}
.az-way small{align-self:start;line-height:1.35}
/* Schritt 2: Klassen – Kürzel links, Bezeichnung rechts */
.az-cards-class{grid-template-columns:minmax(0,1fr);gap:8px}
.az-class .az-card-in{grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:3px;align-items:center}
.az-class .az-code{font-size:calc(13.5px * var(--font-scale,1));padding-block:3px;padding-inline:9px;min-inline-size:40px;text-align:center}
.az-class small{line-height:1.3;overflow-wrap:anywhere}
.az-class .az-why{grid-column:1 / -1}
/* Schritt 3: Filialen */
.az-cards-branch{gap:8px}
.az-branch .az-card-in{column-gap:10px}
.az-branch strong{font-size:calc(15px * var(--font-scale,1));overflow-wrap:anywhere}
@media(max-width:639px){.az-branch .az-ico{display:none}.az-branch .az-card-in{grid-template-columns:minmax(0,1fr)}}
@media(min-width:640px){
  .az-card-in{padding:11px 14px;padding-inline-end:44px}
  .az-cards-way{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .az-cards-class{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
@media(min-width:980px){
  .az-branch .az-card-in{grid-template-columns:auto minmax(0,1fr);justify-items:stretch}
}
@media(min-width:1200px){
  .az-cards-way{grid-template-columns:repeat(4,minmax(0,1fr))}
  .az-cards-class{grid-template-columns:repeat(4,minmax(0,1fr))}
}
/* Wählbare Zusatz-Beträge im Schritt „Preis“ (Einzelunterricht, Online-Unterricht, App) */
.az-extra{margin-block-start:8px}
.az-extra[hidden]{display:none}
/* Gutscheincode im Schritt „Preis“ */
.az-voucher{display:grid;gap:6px;margin-block:0 14px;padding-block:10px;padding-inline:12px;border-radius:calc(var(--rk,1px) * 14);border:1px dashed var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.4))}
.az-voucher-field{font-size:calc(12px * var(--font-scale,1));font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink,var(--brand-accent))}
.az-voucher-row{display:flex;flex-wrap:wrap;gap:8px}
.az-voucher-row input{flex:1 1 150px;min-inline-size:0;max-inline-size:260px;padding:10px 12px;border-radius:calc(var(--rk,1px) * 12);border:1px solid var(--home-line-strong);background:rgba(var(--glass,255,255,255),.06);color:inherit;font:inherit;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.az-voucher-row input::placeholder{font-weight:600;letter-spacing:0;text-transform:none;color:var(--home-muted)}
.az-voucher-row input:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}
.az-voucher-row .btn{padding:10px 16px;font-size:calc(13.5px * var(--font-scale,1))}
.az-voucher-msg{margin:0;font-size:calc(13px * var(--font-scale,1));font-weight:700;line-height:1.4}
.az-voucher-msg[hidden]{display:none}
.az-voucher-msg.is-ok{color:var(--ok-ink,#5fe0a0)}
.az-voucher-msg.is-error{color:var(--err-ink,#ff9a8f)}
.az-voucher-msg.is-info{color:var(--home-muted)}
.az-quote tr[data-line="gutschein"] th,.az-quote tr[data-line="gutschein"] td{color:var(--ok-ink,#5fe0a0);font-weight:800}

/* Umschreibung: Land und Klassen (Zwischenseite /umschreibung) */
.az-conv{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin-block:14px;padding:12px 14px;border-radius:14px;border:1px dashed var(--brand-accent,#ff8c00)}
.az-conv[hidden]{display:none}
.az-conv span{font-size:calc(14px * var(--font-scale,1))}
.az-conv a:not(.btn){font-weight:800}
/* Anzeigen bei Weg: Klassen und Bereiche, die es beim gewählten Weg nicht gibt */
.az-class[data-off],.az-kat[hidden],.az-way-reset[hidden]{display:none!important}
.az-way-reset{margin-block:8px}
.az-health-title{display:block;font-size:calc(15px * var(--font-scale,1));margin-block-end:2px}
.az-health-note{margin:0 0 12px;font-size:calc(12.5px * var(--font-scale,1));color:var(--home-muted)}
.az-reg[data-mode="chat"] .az-step[data-step="6"] .az-panel.az-health{opacity:1}
.az-reg[data-mode="chat"] .az-health > :not([data-if="healthdata"]){opacity:.55}
