
.kos-hero {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: var(--sp-12);
  align-items: start;
  margin-top: var(--sp-8);
}
.kos-hero__aktionen {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-4);
  margin-top: var(--sp-8);
}

.kos-antwort {
  background: var(--c-dark-2);
  border: 1px solid var(--c-border-dark);
  border-left: 3px solid var(--c-accent);
  border-radius: var(--r-lg);
  padding: var(--sp-8);
}
.kos-antwort__label {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-accent);
  margin-bottom: var(--sp-5);
}
.kos-antwort__satz {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  line-height: var(--leading-snug);
  color: var(--c-text-light);
  margin-bottom: var(--sp-5);
  text-wrap: pretty;
}
.kos-antwort__satz strong {
  color: var(--c-accent);
  font-weight: var(--weight-semi);
  white-space: nowrap;
}
.kos-antwort__zusatz {
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: rgba(250, 250, 255, 0.72);
  margin-bottom: var(--sp-5);
}
.kos-antwort__stand { margin: 0; }
.kos-stand {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  color: var(--c-accent);
  border: 1px solid rgba(var(--c-accent-rgb), 0.35);
  border-radius: var(--r-full);
  padding: var(--sp-1) var(--sp-3);
}

.kos-wege {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-6);
  margin-top: var(--sp-12);
}
.kos-weg {
  background: var(--c-white);
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
  padding: var(--sp-8);
  display: flex;
  flex-direction: column;
}
.kos-weg--mitte { border-top: 3px solid var(--c-accent); }
.kos-weg__num {
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  color: var(--c-accent);
  margin-bottom: var(--sp-4);
}
.kos-weg h3 {
  font-size: var(--text-lg);
  line-height: var(--leading-snug);
  margin-bottom: var(--sp-4);
}
.kos-weg p {
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: var(--c-text-muted);
}
.kos-weg__kosten {
  margin-top: auto;
  padding-top: var(--sp-5);
  border-top: 1px solid var(--c-border);
}
.kos-weg__kosten strong { color: var(--c-text); }

.kos-hinweis {
  max-width: 57ch;   
  margin-top: var(--sp-10);
  font-size: var(--text-base);
  line-height: var(--leading-loose);
  color: var(--c-text-muted);
  border-left: 2px solid var(--c-accent);
  padding-left: var(--sp-5);
}
.section--dark .kos-hinweis { color: rgba(250, 250, 255, 0.72); }

.kos-pakete {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-6);
  margin-top: var(--sp-12);
  align-items: stretch;
}
.kos-paket {
  display: flex;
  flex-direction: column;
  background: var(--c-dark-2);
  border: 1px solid var(--c-border-dark);
  border-radius: var(--r-lg);
  padding: var(--sp-8);
}
.kos-paket--b { border-color: rgba(var(--c-accent-rgb), 0.3); }
.kos-paket__label {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-accent);
  margin-bottom: var(--sp-3);
}
.kos-paket__preis {
  font-family: var(--font-mono);
  font-size: var(--text-5xl);
  line-height: var(--leading-tight);
  color: var(--c-accent);
  margin-bottom: var(--sp-6);
}
.kos-paket__preis span {
  font-size: var(--text-2xl);
  margin-left: var(--sp-2);
}
.kos-paket .check-list__item { color: var(--c-text-light); }
.kos-paket__grund {
  margin-top: auto;
  padding-top: var(--sp-6);
  padding-top: var(--sp-5);
  border-top: 1px solid var(--c-border-dark);
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: rgba(250, 250, 255, 0.72);
}
.kos-paket__grund strong { color: var(--c-text-light); }

.kos-zusatz {
  max-width: none;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--sp-2) var(--sp-6);
  margin-top: var(--sp-6);
  padding: var(--sp-6) var(--sp-8);
  background: var(--c-dark-2);
  border: 1px solid var(--c-border-dark);
  border-radius: var(--r-md);
  color: rgba(250, 250, 255, 0.72);
}
.kos-zusatz strong {
  font-family: var(--font-mono);
  font-size: var(--text-xl);
  color: var(--c-accent);
  white-space: nowrap;
}
.kos-zusatz strong em {
  font-style: normal;
  font-size: var(--text-sm);
  color: rgba(250, 250, 255, 0.72);
  margin-left: var(--sp-2);
}

.kos-recht {
  margin-top: var(--sp-10);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
  gap: var(--sp-6) var(--sp-10);
  padding-top: var(--sp-8);
  border-top: 1px solid var(--c-border-dark);
}
.kos-recht > p { margin-top: 0; }
.kos-recht p {
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: rgba(250, 250, 255, 0.72);
}
.kos-recht strong { color: var(--c-text-light); }

.kos-nicht {
  margin-top: var(--sp-10);
  padding: var(--sp-8);
  border: 1px solid var(--c-border-dark);
  border-radius: var(--r-lg);
}
.kos-nicht h3 {
  font-size: var(--text-base);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--c-text-light);
  margin-bottom: var(--sp-5);
}
.kos-nicht ul {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: var(--sp-3) var(--sp-10);
}
.kos-nicht li {
  position: relative;
  padding-left: var(--sp-6);
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: rgba(250, 250, 255, 0.72);
}
.kos-nicht li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.75em;
  width: 10px;
  height: 1px;
  background: var(--c-accent);
}

.kos-treiber {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
  gap: var(--sp-8) var(--sp-10);
  margin-top: var(--sp-12);
  padding-top: var(--sp-8);
  border-top: 1px solid var(--c-border);
}
.kos-treiber__item { padding: 0; }
.kos-treiber__item h3 {
  font-size: var(--text-base);
  line-height: var(--leading-snug);
  margin-bottom: var(--sp-3);
}
.kos-treiber__item p {
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: var(--c-text-muted);
}

.kos-tabelle {
  margin-top: var(--sp-10);
  overflow-x: auto;
}
.kos-tabelle table {
  width: 100%;
  border-collapse: collapse;
  min-width: 520px;
}
.kos-tabelle__caption {
  caption-side: bottom;
  margin-top: var(--sp-4);
  font-size: var(--text-xs);
  line-height: var(--leading-normal);
  color: var(--c-text-muted);
  text-align: left;
  text-wrap: pretty;
}
.kos-tabelle th,
.kos-tabelle td {
  padding: var(--sp-4) var(--sp-4);
  border-bottom: 1px solid var(--c-border);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
  vertical-align: top;
}
.kos-tabelle thead th {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-text-muted);
  border-bottom-width: 2px;
}
.kos-tabelle tbody th { font-weight: var(--weight-semi); color: var(--c-text); }
.kos-tabelle tbody td { color: var(--c-text-muted); }
.kos-tabelle tbody td strong { color: var(--c-text); }
.kos-tabelle tbody tr:last-child th,
.kos-tabelle tbody tr:last-child td { border-bottom: 0; }

.kos-weiter {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
  gap: var(--sp-6);
  margin-top: var(--sp-12);
}
.kos-weiter__karte {
  display: flex;
  flex-direction: column;
  background: var(--c-white);
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
  padding: var(--sp-8);
  text-decoration: none;
  color: inherit;
  transition: border-color 0.18s cubic-bezier(0.4, 0, 0.2, 1),
              transform 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}
.kos-weiter__karte:hover,
.kos-weiter__karte:focus-visible {
  border-color: rgba(var(--c-accent-rgb), 0.5);
  transform: translateY(-2px);
}
.kos-weiter__karte:active { transform: translateY(0) scale(0.99); }
.kos-weiter__karte h3 {
  font-size: var(--text-base);
  line-height: var(--leading-snug);
  margin-bottom: var(--sp-3);
}
.kos-weiter__karte p {
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: var(--c-text-muted);
  margin-bottom: var(--sp-6);
}
.kos-weiter__pfeil {
  margin-top: auto;
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  color: var(--c-text);
  border-bottom: 1px solid var(--c-accent);
  padding-bottom: 2px;
  align-self: flex-start;
  transition: color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}
.kos-weiter__karte:hover .kos-weiter__pfeil { color: var(--c-accent-hover); }

.section--dark .faq-item { border-bottom-color: var(--c-border-dark); }
.section--dark .faq-question { color: var(--c-text-light); }
.section--dark .faq-question:hover,
.section--dark .faq-question:focus-visible { color: var(--c-accent); }
.section--dark .faq-question__icon {
  background: rgba(255, 255, 255, 0.07);
  color: rgba(250, 250, 255, 0.8);
}
.section--dark .faq-item.is-open .faq-question__icon {
  background: rgba(var(--c-accent-rgb), 0.16);
  color: var(--c-accent);
}
.section--dark .faq-answer__inner { color: rgba(250, 250, 255, 0.72); }

.kos-faq__ende {
  margin-top: var(--sp-10);
  font-size: var(--text-sm);
  color: rgba(250, 250, 255, 0.72);
}
.kos-faq__ende a {
  color: var(--c-accent);
  display: inline-block;
  padding-block: var(--sp-4);
  margin-block: calc(var(--sp-4) * -1);
}

@media (max-width: 640px) {
  .kos-tabelle { overflow-x: visible; }
  .kos-tabelle table { min-width: 0; }
  .kos-tabelle thead {
    position: absolute;
    width: 1px; height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
  .kos-tabelle tbody tr {
    display: block;
    padding: var(--sp-5) 0;
    border-bottom: 1px solid var(--c-border);
  }
  .kos-tabelle tbody tr:last-child { border-bottom: 0; }
  .kos-tabelle tbody th,
  .kos-tabelle tbody td {
    display: block;
    padding: 0;
    border: 0;
  }
  .kos-tabelle tbody th {
    font-size: var(--text-base);
    margin-bottom: var(--sp-3);
  }
  .kos-tabelle tbody td {
    padding-left: var(--sp-5);
    border-left: 2px solid var(--c-border);
    margin-bottom: var(--sp-2);
  }
  .kos-tabelle tbody td::before {
    content: attr(data-spalte);
    display: block;
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--c-text-subtle);
    margin-bottom: var(--sp-1);
  }
  .kos-tabelle tbody td:last-child { margin-bottom: 0; }
}

@media (max-width: 1024px) {
  .kos-hero { grid-template-columns: 1fr; gap: var(--sp-8); }
  .kos-wege { grid-template-columns: 1fr; }
  .kos-pakete { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
  .kos-antwort { padding: var(--sp-6); }
  .kos-antwort__satz { font-size: var(--text-xl); }
  .kos-paket__preis { font-size: var(--text-4xl); }
  .kos-hero__aktionen .btn { width: 100%; justify-content: center; }
  .kos-weg, .kos-weiter__karte, .kos-nicht { padding: var(--sp-6); }
}

.section--light .label,
.section--white .label { color: var(--c-text-muted); }

.section--light :focus-visible,
.section--white :focus-visible { outline-color: var(--c-text); }

.page-hero .breadcrumb,
.page-hero .breadcrumb a { color: rgba(255, 255, 255, 0.6); }
.page-hero .breadcrumb li[aria-current] { color: rgba(255, 255, 255, 0.85); }

.footer__bottom-inner nav a,
.footer__bottom-links a { color: rgba(255, 255, 255, 0.6); }
.footer__bottom-inner nav a:hover,
.footer__bottom-links a:hover { color: var(--c-white); }

.seo-tab { display: none; }

.kos-hero > div,
.kos-hero > aside { min-width: 0; }
.kos-hero__aktionen .btn {
  white-space: normal;
  justify-content: center;
  text-align: center;
}

.cta-banner { text-align: left; }
.cta-banner__text { text-align: left; margin-inline: 0; max-width: 60ch; }
.cta-banner__actions { justify-content: flex-start; }
.cta-banner .btn--secondary {
  color: var(--c-accent-ink);
  border-color: rgba(23, 19, 8, 0.55);
}
.cta-banner .btn--secondary:hover,
.cta-banner .btn--secondary:focus-visible {
  border-color: var(--c-accent-ink);
  background: rgba(23, 19, 8, 0.06);
}

@media (prefers-reduced-motion: reduce) {
  .kos-weiter__karte { transition: none; }
  .kos-weiter__karte:hover,
  .kos-weiter__karte:focus-visible,
  .kos-weiter__karte:active { transform: none; }
  .kos-weiter__pfeil { transition: none; }
}


.container--lese > * {
  max-width: 760px;
  margin-inline: 0;
}
.section-header,
.kos-recht > p,
.hw-pricing__head { max-width: 760px; }

.kos-tabelle table { min-width: 0; }
.faq-answer__inner { max-width: 80ch; }
.kos-faq__ende { max-width: 80ch; }

.kos-kontakt__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--sp-8);
  margin-top: var(--sp-12);
  align-items: start;
}
.kos-form__hint {
  font-size: var(--text-xs);
  line-height: var(--leading-normal);
  color: rgba(250, 250, 255, 0.62);   
  margin: var(--sp-5) 0;
  max-width: 70ch;
}
.kos-form__hint a { color: var(--c-accent); }
.kos-form__status {
  margin-top: var(--sp-4);
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
}
.kos-kontakt__wa {
  margin-top: var(--sp-5);
  font-size: var(--text-sm);
  color: rgba(250, 250, 255, 0.72);
}
.kos-kontakt__wa a { color: var(--c-accent); }
.kos-kontakt__eyebrow {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-accent);
  margin-bottom: var(--sp-4);
}
.kos-kontakt__seotext {
  font-size: var(--text-sm);
  line-height: var(--leading-loose);
  color: rgba(250, 250, 255, 0.72);
  margin-bottom: var(--sp-6);
}
@media (max-width: 900px) {
  .kos-kontakt__grid { grid-template-columns: 1fr; }
}


.kos-kontakt__grid > * { min-width: 0; }
.form-row > * { min-width: 0; }
.kontakt-form { min-width: 0; max-width: 100%; }
@media (max-width: 420px) {
  .form-row--2 { grid-template-columns: 1fr; }
  .kontakt-form { padding: var(--sp-5); }
}
