/* KostenloseBewertung, Domain-7-Paket vom 31.10.2026. Baut auf site.css und
   form.css auf; form.css setzt Knöpfe mit !important, deshalb stehen die
   Gegenregeln hier mit höherer Spezifität. */

/* Knöpfe: nie unter 14 px. */
html body .button.button{font-size:max(.875rem,14px)}
html body .situation .link-arrow{font-size:.875rem}

/* Knöpfe einer Gruppe stehen in einer Zeile, auch mobil. Wird es eng, steht die
   Beschriftung zweizeilig. */
html body .actions.kb-gruppe{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;gap:12px}
html body .actions.kb-gruppe>.button{flex:0 1 auto;width:auto;min-width:0;white-space:normal;text-wrap:balance;line-height:1.25;padding-inline:18px}
html body .cta-panel .actions.kb-gruppe>.button{flex:1 1 0;justify-content:center}
html body .actions.kb-gruppe>.button .ui-icon{flex:none}
html body .actions.kb-gruppe>.button[href^="tel:"]{white-space:nowrap;flex:none;max-width:none}
html body .actions.kb-gruppe>.link-arrow{flex:0 1 auto;min-width:0;align-self:center;line-height:1.3}
.inner-hero .actions.kb-gruppe,.hero-copy .actions.kb-gruppe{margin-top:24px}
.section-body .actions.kb-gruppe,.kb-nach .actions.kb-gruppe,.text-layout .actions.kb-gruppe{margin-top:22px}
/* Unter 1020 px teilen sich die Knöpfe die Zeile; der Hauptknopf bekommt mehr Platz,
   keiner wird breiter als seine Beschriftung. Das Pfeilsymbol entfällt, damit beide
   Beschriftungen in höchstens zwei Zeilen passen. */
@media(max-width:1020px){
  html body .actions.kb-gruppe{gap:10px}
  html body .actions.kb-gruppe>.button{flex:1 1 0;max-width:max-content;padding-inline:14px;gap:6px}
  html body .actions.kb-gruppe>.button:first-child{flex-grow:1.4}
  html body .actions.kb-gruppe>.button .ui-icon{display:none}
  html body .actions.kb-gruppe>.link-arrow{flex:1 1 0;gap:6px}
  html body .actions.kb-gruppe>.link-arrow .ui-icon{width:16px;height:16px}
  html body .check-cta .cta-grid{display:block}
  html body .check-cta .cta-panel{margin-top:30px}
}
@media(max-width:600px){
  html body .actions.kb-gruppe{gap:8px}
  html body .actions.kb-gruppe>.button{padding-inline:9px;min-height:52px}
  html body .check-cta .cta-panel{padding:22px 0 0;background:none;border:0;border-top:1px solid color-mix(in srgb,#081f38 70%,#f0f0f0);border-radius:0}
}

/* Umrandeter Nebenknopf: hell auf hellem Grund, invertiert auf Navy. */
html body .button.button-secondary.outline{background:transparent;color:var(--navy);border:1px solid color-mix(in srgb,#081f38 49%,#f0f0f0)}
html body .button.button-secondary.outline:hover{background:#f0f0f0}
html body .check-cta .button.button-secondary.outline{color:#f0f0f0;border-color:color-mix(in srgb,#081f38 30%,#f0f0f0)}
html body .check-cta .button.button-secondary.outline:hover{background:color-mix(in srgb,#081f38 80%,#f0f0f0)}

/* „Unverbindlich.“ */
.kb-mikro{margin-top:12px}
.check-cta .kb-mikro{color:color-mix(in srgb,#081f38 15%,#f0f0f0)}
.check-cta .kb-mikro span:before{background:color-mix(in srgb,#081f38 15%,#f0f0f0)}
.cta-panel .kb-mikro+.small{margin-top:12px}
.kb-kontaktpanel .kb-mail{margin:16px 0 0}
.kb-kontaktpanel .kb-mail .link-arrow{margin-top:0;overflow-wrap:anywhere}
.check-cta .lead+.lead{margin-top:14px}

/* Verweise unter Abschnitten */
.kb-nach{margin-top:26px}
.kb-nach:empty{display:none}
.actions.kb-verweise{gap:12px 26px;margin-top:22px}
.section-body>.link-arrow,.split-copy .link-arrow,.example-copy>.link-arrow,.faq-layout>div>.link-arrow{margin-top:18px}
.step-note p+p{margin-top:10px}
.situation p+p{margin-top:10px}
.kb-liste{margin:14px 0 0;padding-left:20px}
.kb-weg{margin:0 0 8px}
.section-contact .section-body>p+p:not(.kb-weg){margin-top:14px}
.kb-ohne-js{margin:14px 0}
[data-kb-suche][hidden]{display:none !important}

/* Symbole der F40-Familie: 64 px, auf dem Telefon 56 px (Medienhinweis 6). */
.card .icon.kb-icon,.service .icon.kb-icon,.step .icon.kb-icon{width:64px;height:64px;object-fit:contain;flex-shrink:0;border-radius:0}
.step .icon.kb-icon{padding:0;background:none}
.card-grid[data-count="6"] .card .icon.kb-icon{width:64px;height:64px}
@media(max-width:760px){
  .card .icon.kb-icon,.service .icon.kb-icon,.step .icon.kb-icon,.card-grid[data-count="6"] .card .icon.kb-icon{width:56px;height:56px}
  .card-grid[data-count="6"] .card{grid-template-columns:56px minmax(0,1fr)}
}
.card-grid[data-count="6"] .card>p{grid-column:2}

/* Fiktives Beispiel: Überschrift der Karte im dunklen Kopf. */
.example-card-top h3.kb-karte-titel{margin:0;color:#f0f0f0;font-size:1.05rem;line-height:1.35}
.example-card .example-context{margin-top:16px;margin-bottom:0}
.example-card .example-facts{margin-top:10px}

/* Fast quadratisches Planfoto: ganzes Bild, kein Beschnitt (Medienhinweis 7). */
html body .split-figure img.kb-plan-photo{height:auto;aspect-ratio:1150/1024;object-fit:cover}

/* Leistungen mit Text */
.service>div{min-width:0}
.kb-bedingungen{margin-top:26px;max-width:72ch}
.kb-bedingungen p+p{margin-top:12px}

/* Lange Wörter ohne Silbentrennung umbrechen, nie mitten im Wort quetschen. */
.page-index a span{overflow-wrap:anywhere}
.kb-weg a,.section-contact a{overflow-wrap:anywhere}
