/* MASTER TYPOGRAPHY — Service-Pages auf Homepage-Standard
   Ladereihenfolge: nach allen Astro-Page-CSS, gewinnt durch !important.
   Generiert: 2026-06-15 für preview.xaicore.de */

:root {
  --master-font-body: 'Inter', system-ui, -apple-system, 'Helvetica Neue', sans-serif;
  --master-font-display: 'Clash Display', 'Inter', system-ui, sans-serif;
  --master-font-eyebrow: 'Inter', system-ui, sans-serif;
  --master-text: rgba(255,255,255,0.92);
  --master-text-soft: rgba(255,255,255,0.72);
  --master-text-muted: rgba(255,255,255,0.55);
}

/* Body-Font: Inter überall */
body, body * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body {
  font-family: var(--master-font-body) !important;
}

/* Headlines (h1–h4) + Section-Titles: Clash Display */
h1, h2, h3, h4,
[class*="-title"]:not(input):not(textarea),
[class*="-h1"], [class*="-h2"], [class*="-h3"], [class*="-h"]:not([class*="hero-sub"]):not(input):not(textarea) {
  font-family: var(--master-font-display) !important;
  letter-spacing: -0.02em !important;
}

/* Section-Title Größe etwas zurückgesetzt für gleichmäßige Treppe */
h2[class*="-title"], [class*="-h2"], .section-title {
  font-size: clamp(28px, 4vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

/* Eyebrows / Section-Labels: Inter, uppercase */
[class*="-eyebrow"],
[class*="-section-label"],
.section-label,
[class*="-lbl"]:not(input):not(label) {
  font-family: var(--master-font-eyebrow) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

/* Body-Text: Inter, sanfter Kontrast */
p, [class*="-desc"], [class*="-sub"]:not(h2):not(h3):not(input):not(textarea) {
  font-family: var(--master-font-body) !important;
  color: var(--master-text-soft) !important;
  line-height: 1.65 !important;
}

/* Buttons + CTAs: Inter, sales-bold */
button, a[class*="-btn"], a[class*="-cta"], [class*="-btn"]:not(input), .sl-btn {
  font-family: var(--master-font-body) !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
}

/* Form-Inputs: Inter, lesbar */
input, textarea, select {
  font-family: var(--master-font-body) !important;
  font-size: 15px !important;
}

/* Labels auf Forms: Inter, normal */
label {
  font-family: var(--master-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  color: var(--master-text-soft) !important;
  text-transform: none !important;
}

/* Listen-Items in Hero / Demo-Sections: nie Bold-Display */
[class*="-line"], [class*="-bullet"], [class*="-item-text"] {
  font-family: var(--master-font-body) !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
}

/* Spacing-Harmonisierung */
section {
  padding-top: clamp(64px, 8vw, 120px);
  padding-bottom: clamp(64px, 8vw, 120px);
}


/* ============================================================
   SERVICE-PAGE HERO-OVERRIDES — Schriftgrößen wie Homepage
   ============================================================ */

/* Service-Hero-Containers auf konsistente Höhe */
.dys-hero, [class$="-hero"]:not(.hero) {
  min-height: auto !important;
  padding: clamp(80px, 12vw, 140px) clamp(24px, 4vw, 48px) clamp(48px, 8vw, 80px) !important;
}

/* H1 in Service-Hero auf Master-Standard — deutlich kompakter als bisher */
.dys-hero h1,
[class$="-hero"] h1,
[class*="-hero "] h1 {
  font-family: 'Clash Display', 'Inter', system-ui, sans-serif !important;
  font-size: clamp(34px, 4.5vw, 60px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.025em !important;
  margin: 0 auto !important;
  max-width: 18ch !important;
}

/* Hero-Sub: Inter, gut lesbar, nicht zu klein */
.dys-hero-sub,
[class$="-hero-sub"],
[class*="-hero "] p,
.dys-hero p {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: clamp(15px, 1.4vw, 17px) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.72) !important;
  max-width: 58ch !important;
  margin: 24px auto 0 !important;
}

/* Service-Section-Titles: alle einheitlich */
.sec-title,
.svc-sec-title,
[class$="-sec-title"] {
  font-family: 'Clash Display', 'Inter', system-ui, sans-serif !important;
  font-size: clamp(28px, 4vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.025em !important;
}

/* Service-Eyebrows: alle einheitlich klein, uppercase */
[class*="sec-lbl"],
.svc-section-label,
[class$="-eyebrow"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

/* H2 generell — Master-Standard */
/* Section-H2 (NICHT Blog-Cards, Card-Titel etc.): nur in <section> ohne Card-Klasse */
section > h2:not([class*="card"]):not([class*="cap"]) {
  font-size: clamp(28px, 4vw, 52px) !important;
  line-height: 1.1 !important;
}
.blog-card h2,
.amz-cap-title,
.dys-formate-tier,
[class*="-card"] h2,
[class*="-card"] h3 {
  font-size: clamp(18px, 1.6vw, 22px) !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

/* H3 auf Cards / Steps — kompakt */
h3 {
  font-size: clamp(17px, 1.6vw, 21px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

/* Hero-Buttons gleich groß überall */
.dys-hero-btns,
[class$="-hero-btns"] {
  margin-top: clamp(28px, 4vw, 44px) !important;
  gap: 12px !important;
}

/* Mobile: keine Sprünge */
@media (max-width: 768px) {
  .dys-hero h1,
  [class$="-hero"] h1 {
    font-size: clamp(30px, 8vw, 44px) !important;
    line-height: 1.1 !important;
  }
}


/* ============================================================
   SERVICE-PAGE FEIN-TUNING — alle restlichen Schriftgrößen
   auf Master-Standard angleichen (Inter-Body 14–16 px)
   ============================================================ */

/* Modular-/Sub-Section-Titles auf Cards: kompakt */
.ki-modular-title,
.it-modular-title,
.web-modular-title,
[class$="-modular-title"],
[class$="-card-title"],
[class$="-build-title"] {
  font-family: 'Clash Display', 'Inter', system-ui, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.25 !important;
}

/* FAQ-Frage / FAQ-Antwort: Master-Body-Größen */
.svc-faq-q,
[class$="-faq-q"] > span,
.svc-faq-q > span {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
}
.svc-faq-a-inner,
[class$="-faq-a-inner"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* Process-Step-Nummern: clamp-basiert statt fix 36px */
.dys-proc-n,
[class$="-proc-n"],
[class$="-step-n"],
[class$="-proc-step-n"] {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(20px, 2vw, 28px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  line-height: 1 !important;
}

/* Stat-Werte (KI-First, DSGVO etc.) */
.dys-stat-val,
[class$="-stat-val"] {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(17px, 1.9vw, 22px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.005em !important;
}
[class*="-result-num"] {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(26px, 3vw, 40px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.1 !important;
}
.dys-stat-label,
[class$="-stat-label"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.55) !important;
}
[class*="-result-lbl"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  letter-spacing: -0.005em !important;
  text-transform: none !important;
  color: rgba(255,255,255,0.72) !important;
  line-height: 1.6 !important;
}
[class*="-result-lbl"] strong {
  color: rgba(255,255,255,0.92) !important;
  font-weight: 700 !important;
}

/* Trust-Section: einheitlich */
.trust-section-lbl, .trust-section-sub {
  font-family: 'Inter', system-ui, sans-serif !important;
}
.trust-section-sub {
  font-size: clamp(14.5px, 1.4vw, 16px) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.72) !important;
}
.trust-industry-name {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.trust-industry-desc {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,0.55) !important;
}
.trust-quote-text {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
}
.trust-quote-name {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
}
.trust-quote-role {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,0.55) !important;
}

/* Cards Body-Text */
.ki-modular-text,
[class$="-modular-text"],
[class$="-build-text"],
[class$="-card-text"],
[class*="-card"] p {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* Process-Step-Title (h3) — bleibt durch h3 master gehandelt */
/* Process-Step-Text */
.dys-proc-step p,
[class*="-proc-step"] p,
[class*="-step"] p {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* Hero-Badge-Text (z.B. "KI-PROTOTYPEN" Eyebrow im Hero) */
.dys-badge-text,
[class$="-badge-text"],
[class$="-hero-badge"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}

/* Section-Sub Standard */
.sec-sub,
[class$="-sec-sub"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: clamp(14.5px, 1.4vw, 16.5px) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* Statement-Sub */
.dys-statement-sub,
.dys-statement2-sub,
[class$="-statement-sub"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: clamp(14px, 1.4vw, 16px) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* Hero-Buttons: konsistente Größe */
.btn-dys, .btn-dys-outline,
[class*="btn-dys"],
[class$="-submit"],
.dys-submit {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}


/* Letzte Lücken — verbleibende Service-Klassen auf Master-Standard */
.svc-faq-sub {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: clamp(14.5px, 1.4vw, 16.5px) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.72) !important;
}

.svc-faq-q.open,
[class$="-faq-q"].open {
  font-size: 15px !important;
}

/* Trust-Quote-Mark Dekoration */
.trust-quote-mark {
  font-size: clamp(28px, 3vw, 40px) !important;
}

/* Build-Card-Nummer (z.B. "01" auf KI-Mitarbeiter-Card) */
.dys-build-n,
[class$="-build-n"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.55) !important;
}

/* dys-statement2-btn (CTA-Button in Statement-Section) */
.dys-statement2-btn,
[class$="-statement-btn"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* Generelle Listen-Items (li in Forms, FAQ etc.) */
[class*="-form"] li, [class*="-form"] label, .form-row-2 label {
  font-size: 13.5px !important;
}


/* Letzte einzelne Klasse — Avatar-Initial */
.trust-quote-avatar {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(16px, 1.6vw, 20px) !important;
  font-weight: 700 !important;
}


/* ============================================================
   MARKETING-PAGE — mkt-* Klassen auf Master-Standard
   ============================================================ */

/* Service-Cards Nummerierung */
.mkt-service-num {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.55) !important;
}

/* Service-Card-Tags */
.mkt-service-tag {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
}

/* Process-Step-Title */
.mkt-proc-t {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(16px, 1.5vw, 18px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

/* Process-Step-Description */
.mkt-proc-d {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* Proof-Section Values */
.mkt-proof-val {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(26px, 3vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

/* Form-Inputs */
.mkt-input, .mkt-select, .mkt-textarea {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 15px !important;
}

/* Form-Labels */
.mkt-label {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  color: rgba(255,255,255,0.72) !important;
}


/* ============================================================
   ALLE SERVICE-PAGES — Mass-Sweep für gleiche Typografie
   it-*, amz-*, odoo-*, sl-*, web-* Klassen
   ============================================================ */

/* === FORM-INPUTS ÜBERALL gleich (alle Service-Pages) === */
.it-input, .it-select, .it-textarea,
.amz-input, .amz-select, .amz-textarea,
.odoo-input, .odoo-select, .odoo-textarea,
.sl-input, .sl-select, .sl-textarea,
.web-input, .web-select, .web-textarea {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 15px !important;
}

/* === FORM-LABELS ÜBERALL gleich === */
.it-label, .amz-label, .odoo-label, .sl-label, .web-label {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  color: rgba(255,255,255,0.72) !important;
}

/* === PROCESS-STEP TITLES + DESCRIPTIONS === */
.it-proc-t, .amz-proc-t, .web-proc-t {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(16px, 1.5vw, 18px) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}
.it-proc-d, .amz-proc-d, .web-proc-d {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.72) !important;
}

/* === PROOF-VALUES (KPI-Cards) === */
.it-proof-val, .web-proof-val {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(26px, 3vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

/* === SERVICE-NUM / SRV-NUM (Card-Eyebrow) === */
.it-service-num, .amz-srv-num, .web-type-num {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.55) !important;
}

/* === SERVICE-TAG / TAG === */
.it-service-tag, .web-type-tag, .odoo-industry-tag, .sl-tag, .amz-audit-tag, .amz-bilder-tag {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}

/* === IT-spezifisch === */
.it-ki-item {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
}

/* === ODOO-spezifisch === */
.odoo-stat-item-val {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(17px, 1.9vw, 22px) !important;
  font-weight: 700 !important;
}
.odoo-stat-item-label {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.55) !important;
}

/* === AMAZON-spezifisch === */
.amz-audit-inc {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}
.amz-audit-inc-dot { font-size: 8px !important; }
.amz-audit-note {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.55) !important;
}
.amz-bilder-item {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13px !important;
}
.amz-bilder-note {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.55) !important;
}
.amz-fear-pct {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(22px, 2.4vw, 28px) !important;
  font-weight: 700 !important;
}
.amz-fear-quote {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(20px, 2.6vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}
.amz-fear-txt, .amz-fear-conclusion {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.72) !important;
}
.amz-ki-badge-label {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}
.amz-ppc-dot { font-size: 9px !important; }
.amz-srv-result {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
}
.amz-stat-big {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(28px, 4vw, 44px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

/* === STARLINK-spezifisch === */
.sl-basis, .sl-fazit {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.72) !important;
}
.sl-case-ex {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-style: italic !important;
  color: rgba(255,255,255,0.55) !important;
}
.sl-gal-note {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.55) !important;
}
.sl-gal-type {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}
.sl-point-label {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
.sl-point-num {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(24px, 3vw, 34px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
.sl-trustbar-item {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
.sl-zone-cities, .sl-zone-km {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  color: rgba(255,255,255,0.72) !important;
}
.sl-zone-name {
  font-family: 'Clash Display', sans-serif !important;
  font-size: clamp(15px, 1.5vw, 17px) !important;
  font-weight: 700 !important;
}
.sl-zone-preis {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

/* ===================================================
   STARLINK — Lesbarkeit + Symmetrie Fix 2026-06-16
   =================================================== */

/* Hero-Sub: deutlich lesbarer */
.sl-hero-sub, .sl-hero p {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: clamp(15.5px, 1.4vw, 17px) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.88) !important;
  letter-spacing: 0 !important;
  max-width: 640px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Section-Sub-Texte: 400 statt 300 für Lesbarkeit */
.sl-sub {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,0.82) !important;
  line-height: 1.7 !important;
}

/* Wichtige Hinweise: Symmetrie + Lesbarkeit */
.sl-basis, .sl-fazit, .sl-hinweise, [class*="sl-info"], [class*="sl-note-box"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  color: rgba(255,255,255,0.85) !important;
}
.sl-basis strong, .sl-fazit strong, .sl-hinweise strong, [class*="sl-info"] strong {
  font-weight: 600 !important;
  color: rgba(255,255,255,0.98) !important;
}
.sl-basis a, .sl-fazit a, .sl-hinweise a, [class*="sl-info"] a {
  color: #67E8F9 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

/* FAQ-Body: stärker, ruhiger */
.svc-faq-a-inner, .svc-faq-a {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  color: rgba(255,255,255,0.82) !important;
}

/* Statement-Sub: Inter, leserlicher */
.sl-statement p:not(:first-child),
.sl-statement-sub {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  color: rgba(255,255,255,0.85) !important;
  line-height: 1.65 !important;
}

/* Trust-Section-Item Texte */
.trust-section .trust-item, [class*="trust-result"] {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 400 !important;
}

/* Hero-Lead Text — Klare Inter Regular, hoher Kontrast */
.sl-hero-lead, [class*="-hero-lead"], [class*="hero-lead"], .sl-hero p {
  font-family: 'Inter', -apple-system, system-ui, sans-serif !important;
  font-size: clamp(16px, 1.35vw, 18px) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.55 !important;
  letter-spacing: 0.005em !important;
  color: rgba(255,255,255,0.95) !important;
  max-width: 620px !important;
  margin: 24px auto 0 !important;
  text-align: center !important;
}

/* ===================================================
   AMAZON BILDER & DESIGN — Capabilities-Grid 2026-06-16
   =================================================== */
.amz-caps-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 18px !important;
  margin-top: 48px !important;
}
@media (min-width: 1000px) {
  .amz-caps-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }
}
@media (max-width: 720px) {
  .amz-caps-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
}
.amz-cap {
  position: relative !important;
  padding: 26px 28px !important;
  background: rgba(255,255,255,0.025) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 18px !important;
  transition: border-color .3s, background .3s, transform .3s !important;
}
.amz-cap:hover {
  border-color: rgba(103,232,249,0.28) !important;
  background: rgba(103,232,249,0.04) !important;
  transform: translateY(-2px) !important;
}
.amz-cap-title {
  font-family: 'Clash Display', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  color: rgba(255,255,255,0.96) !important;
  margin: 0 0 8px !important;
}
.amz-cap-desc {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,0.74) !important;
  margin: 0 !important;
}
.amz-bilder-closer {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-style: italic !important;
}

/* ===================================================
   KI-SCHULUNGEN — Formate-Cards 2026-06-16
   =================================================== */
.dys-formate-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 18px !important;
  margin: 48px 0 0 !important;
}
.dys-formate-card {
  padding: 28px 26px !important;
  background: rgba(255,255,255,0.025) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 18px !important;
  transition: border-color .3s, background .3s, transform .3s !important;
}
.dys-formate-card:hover {
  border-color: rgba(168,85,247,0.32) !important;
  background: rgba(168,85,247,0.04) !important;
  transform: translateY(-2px) !important;
}
.dys-formate-tier {
  font-family: 'Clash Display', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,0.98) !important;
  margin: 0 0 4px !important;
  letter-spacing: -0.01em !important;
}
.dys-formate-dauer {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #A855F7 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  margin-bottom: 18px !important;
}
.dys-formate-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
.dys-formate-list li {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: rgba(255,255,255,0.78) !important;
  position: relative !important;
  padding-left: 18px !important;
}
.dys-formate-list li::before {
  content: '·' !important;
  position: absolute !important;
  left: 4px !important;
  color: #A855F7 !important;
  font-weight: 700 !important;
}


/* ===================================================
   BLOG — Lese-Typografie 2026-06-16
   Serif für Karten-Titel und Lese-Body, hoch lesbar.
   System-Serif-Stack: Charter (Mac) > Sitka Text (Win) > Georgia überall
   =================================================== */
.blog-card h2,
.blog-card-meta,
.blog-card-excerpt,
.blog-card-footer,
.blog-hero h1,
.blog-hero p,
[data-astro-cid-5tznm7mj] h1,
[data-astro-cid-5tznm7mj] h2,
[data-astro-cid-5tznm7mj] h3 {
  font-family: 'Source Serif 4', 'Source Serif Pro', Charter, 'Bitstream Charter', 'Sitka Text', Cambria, Georgia, serif !important;
}

/* Blog-Card-Titel — Serif, kompakt, lesbar */
.blog-card h2,
[data-astro-cid-5tznm7mj] h2 {
  font-family: 'Source Serif 4', Charter, 'Sitka Text', Cambria, Georgia, serif !important;
  font-size: clamp(19px, 1.7vw, 23px) !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em !important;
  line-height: 1.3 !important;
  color: rgba(255,255,255,0.95) !important;
}

/* Blog-Hero-H1 — Serif, Display-Größe */
.blog-hero h1,
[data-astro-cid-5tznm7mj].blog-hero h1 {
  font-family: 'Source Serif 4', Charter, 'Sitka Text', Cambria, Georgia, serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
}

/* Blog-Excerpt — Lese-Body, Serif für Konsistenz */
.blog-card-excerpt {
  font-family: 'Source Serif 4', 'Source Serif Pro', Charter, 'Sitka Text', Georgia, serif !important;
  font-size: 15.5px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.78) !important;
}

/* Blog-Card-Meta + Footer — Inter (UI-Elemente bleiben Sans) */
.blog-card-meta,
.blog-card-footer,
.blog-card-category {
  font-family: 'Inter', system-ui, sans-serif !important;
}

/* Blog-Posts: Body-Text (article p, ul, li) in Serif für Lesefluss */
article p,
article ul li,
article ol li,
article blockquote,
[class*="post-content"] p,
[class*="article-content"] p {
  font-family: 'Source Serif 4', 'Source Serif Pro', Charter, 'Sitka Text', Cambria, Georgia, serif !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
  color: rgba(255,255,255,0.86) !important;
}

article h2,
article h3 {
  font-family: 'Source Serif 4', Charter, 'Sitka Text', Cambria, Georgia, serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
}


/* ===================================================
   CLS-FIX 2026-06-16
   - Stable layout für Custom Fonts + Hero-Containers
   =================================================== */
/* Stable Layout-Shift via size-adjust + fallback-Metrik */
@font-face {
  font-family: 'Inter Fallback';
  src: local('Arial');
  size-adjust: 107%;
  ascent-override: 90%;
  descent-override: 22%;
  line-gap-override: 0%;
}
@font-face {
  font-family: 'Clash Fallback';
  src: local('Arial Black'), local('Arial');
  size-adjust: 110%;
}
body {
  font-family: 'Inter', 'Inter Fallback', system-ui, sans-serif !important;
}

/* H1/H2 in Hero — reservierte Höhe vor Font-Load (verhindert CLS) */
[class$="-hero"] h1,
[class*="-hero "] h1,
.dys-hero h1,
.blog-hero h1 {
  font-display: optional !important;
  contain: layout;
}

/* Hero-Container Min-Heights stabilisieren */
.it-hero, .amz-hero, .web-hero, .odoo-hero, .mkt-hero, .dys-hero, .sl-hero, .shp-hero, .blog-hero {
  contain: layout;
}


/* CLS-Final: Hero-min-Heights vor Font-Load */
.it-hero, .amz-hero, .web-hero, .odoo-hero, .mkt-hero, .sl-hero, .shp-hero, .dys-hero {
  min-height: clamp(420px, 60vh, 580px) !important;
}
.it-hero-content, .amz-hero-content, .web-hero-content, .odoo-hero-inner, .mkt-hero-content, .sl-hero-inner, .shp-hero-content, .dys-hero-inner {
  min-height: clamp(300px, 50vh, 460px);
}
/* Self-hosted Inter + Clash: Block-period verkürzen */
@font-face {
  font-family: 'Inter';
  font-display: optional;
}
@font-face {
  font-family: 'Clash Display';
  font-display: optional;
}


/* A11y-Fix Marketing-Service-Num + ähnliche */
.mkt-service-num, .it-service-num, .web-service-num,
[class*="-service-num"], [class*="-step-n"] {
  color: rgba(255,255,255,0.92) !important;
  font-weight: 700 !important;
}


/* A11y-final: mkt-service-num — leere oder vorhandene mit hohem Kontrast */
.mkt-service-num {
  color: rgba(255,255,255,0.95) !important;
}
.mkt-service-num:empty {
  display: none !important;
}
