/**
 * AK24 Design System Consolidation
 * Einheitliche Buttons, Cards, Typo, Section-Rhythmus – Legacy-Aliase für alle Marketing-Seiten.
 */

/* —— Page shell —— */
.ak24-marketing-page,
.ak24-marketing-subpage {
  background: var(--ak-bg, #faf7f2);
}

/* —— Legacy Primary → Orange Pill (Hero-CTA ausgenommen) —— */
.mp-btn--primary,
.preise-cta-primary,
.hm-hero-premium-btn--primary:not(.home-hero-cta-red),
.site-header-btn-primary,
.site-kontakt-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: var(--ak-btn-height, 3rem) !important;
  padding: 0.75rem var(--ak-btn-padding-x, 1.5rem) !important;
  border-radius: var(--ak-btn-radius, 999px) !important;
  font-size: var(--ak-btn-font, 0.9375rem) !important;
  font-weight: var(--ak-btn-weight, 700) !important;
  text-decoration: none !important;
  border: 2px solid transparent !important;
  color: #fff !important;
  background: var(--ak-gradient-orange-btn) !important;
  box-shadow: 0 10px 28px rgba(236, 100, 8, 0.24) !important;
  transition:
    transform 0.2s var(--ak-ease),
    box-shadow 0.2s ease,
    filter 0.15s ease !important;
}

@media (hover: hover) {
  .mp-btn--primary:hover,
  .preise-cta-primary:hover,
  .hm-hero-premium-btn--primary:not(.home-hero-cta-red):hover {
    transform: translateY(-2px);
    filter: brightness(1.04);
  }
}

/* —— Legacy Secondary —— */
.mp-btn--outline-brand,
.preise-cta-secondary,
.home-hero-cta-secondary,
.hm-hero-premium-btn:not(.hm-hero-premium-btn--primary) {
  min-height: var(--ak-btn-height, 3rem) !important;
  padding: 0.75rem var(--ak-btn-padding-x, 1.5rem) !important;
  border-radius: var(--ak-btn-radius, 999px) !important;
  font-weight: var(--ak-btn-weight, 700) !important;
  color: var(--ak-ink, #2a2522) !important;
  background: #fff !important;
  border: 2px solid rgba(42, 37, 34, 0.14) !important;
  box-shadow: 0 2px 8px rgba(42, 37, 34, 0.04) !important;
}

/* Ghost on dark → Secondary-on-dark */
.ak-band-dark .mp-btn--ghost,
.ak-band-brand .mp-btn--ghost,
.ak-band-finale .mp-btn--ghost,
.mps-hero .mp-btn--ghost,
.prr-cta-band .mp-btn--ghost,
.prr-article__ghost-btn {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 2px solid rgba(255, 255, 255, 0.28) !important;
  border-radius: var(--ak-btn-radius, 999px) !important;
  min-height: var(--ak-btn-height, 3rem) !important;
}

/* —— Unified card language —— */
.ak-card,
.mps-svc-card__link,
.prr-hub__card,
.prr-related__card,
.prr-card,
.prr-trust-strip__item,
.prr-price-guide__item,
.mps-trust-pillar,
.mp-split {
  border-radius: var(--ak-radius-card, 1.25rem) !important;
  border: 1px solid var(--ak-line, rgba(42, 37, 34, 0.08)) !important;
  background: var(--ak-surface, #fffdf9) !important;
  box-shadow: var(--ak-shadow-card) !important;
}

.mps-svc-card__link {
  background: var(--ak-surface, #fffdf9) !important;
}

.prr-card--overview,
.prr-card--source,
.prr-editorial--cta,
.mp-split {
  background: var(--ak-surface, #fffdf9) !important;
  background-image: none !important;
}

/* —— Dark sections: white / cream text only —— */
.ak-band-dark,
.ak-band-brand,
.ak-band-finale,
.ak-band-navy,
.mps-hero,
.prr-hub__hero,
.prr-cta-band,
.b2be-band--dark,
.frn-hero,
.clp-hero {
  color: #fff;
}

.ak-band-dark p,
.ak-band-brand p,
.ak-band-finale p,
.mps-hero p,
.prr-hub__hero p,
.prr-cta-band p {
  color: rgba(255, 253, 249, 0.88);
}

.ak-band-dark h1,
.ak-band-dark h2,
.ak-band-dark h3,
.ak-band-brand h1,
.ak-band-brand h2,
.mps-hero__h1,
.prr-hub__h1 {
  color: #fff;
}

/* Orange only for CTAs, icons, small highlights – not headings/body on light */
.ak-title-section,
.ak-title-hero,
.prr-editorial__h2,
.prr-hub__section-title {
  color: var(--ak-ink, #2a2522);
}

.prr-hub__card-range,
.prr-price-guide__range {
  color: var(--ak-orange, #ec6408);
}

/* —— Premium section heads → AK typographic rhythm —— */
.mps-section-head__title {
  font-size: var(--ak-font-h2);
  font-weight: 800;
  letter-spacing: var(--ak-ls-tight);
  line-height: var(--ak-lh-tight);
  color: var(--ak-ink);
}

.mps-section-head__lead {
  font-size: var(--ak-font-lead);
  line-height: 1.78;
  color: var(--ak-muted);
}

.mps-section-head__kicker {
  letter-spacing: var(--ak-ls-kicker);
  color: var(--ak-brand);
}

/* —— Section padding unification —— */
.ak24-leistungen-premium .ls-section,
.ak24-faq-premium section,
.ak24-ueber-uns-premium section,
.ak24-franchise-premium section,
.ak24-preisradar .prr-article__shell,
.ak24-preisradar .prr-hub__shell {
  padding-top: var(--ak-section-space-mobile);
  padding-bottom: var(--ak-section-space-mobile);
}

@media (min-width: 768px) {
  .ak24-leistungen-premium .ls-section,
  .ak24-faq-premium section,
  .ak24-ueber-uns-premium section,
  .ak24-franchise-premium section,
  .ak24-preisradar .prr-article__shell,
  .ak24-preisradar .prr-hub__shell {
    padding-top: var(--ak-section-space-tablet);
    padding-bottom: var(--ak-section-space-tablet);
  }
}

@media (min-width: 1024px) {
  .ak24-leistungen-premium .ls-section,
  .ak24-faq-premium section,
  .ak24-ueber-uns-premium section,
  .ak24-franchise-premium section,
  .ak24-preisradar .prr-article__shell,
  .ak24-preisradar .prr-hub__shell {
    padding-top: var(--ak-section-space-desktop);
    padding-bottom: var(--ak-section-space-desktop);
  }
}

/* —— Team page alignment —— */
.ak24-marketing-page .page {
  background: var(--ak-bg, #faf7f2);
  color: var(--ak-ink, #2a2522);
}
