/* =====================================================================
   farpoint-CI-Vorschau fuer index.html (DE)
   Farben: Navy #1E2A47 + Weiss tragen, Cloud #F4F7FB als Flaeche,
   Teal #00CED1 und Orange #FF6A00 nur als Akzent bzw. primaerer CTA.
   Schriften: Raleway (Headlines), IBM Plex Sans (Text) - beide lokal.
   Wird NACH main.css geladen und ueberschreibt nur, was noetig ist.
   ===================================================================== */

:root {
    --fp-navy: #1E2A47;
    --fp-navy-2: #26355a;
    --fp-white: #FFFFFF;
    --fp-cloud: #F4F7FB;
    --fp-line: #DDE3EC;
    --fp-text: #1E2A47;
    --fp-muted: #5A6578;
    --fp-teal: #00CED1;
    --fp-teal-dark: #00757A;
    --fp-orange: #FF6A00;

    --primary-blue: var(--fp-navy);
    --brand-navy: var(--fp-navy);
    --accent-color: var(--fp-teal-dark);
    --hover-color: var(--fp-teal-dark);
    --dark-bg: var(--fp-cloud);
    --light-text: var(--fp-text);
    --gray-text: var(--fp-muted);
}

body {
    background: var(--fp-cloud);
    color: var(--fp-text);
}

/* ---------- Seitenleiste ---------- */
.header {
    background: var(--fp-navy);
    border-right: 0;
}
.header-content { padding: 32px 28px; }
.header-photo { margin-bottom: 18px; }
.header-photo img {
    width: 120px; height: 120px;
    border: 3px solid var(--fp-white);
}
.header-titles { margin-bottom: 22px; }
.header-titles h2 { color: var(--fp-white); font-size: 1.5rem; }
.header .header-subtitle,
.header .header-subtitle span { color: rgba(255, 255, 255, 0.78) !important; letter-spacing: 0 !important; }
.header .header-subtitle .u0e0c526c { color: var(--fp-teal) !important; }
.header .header-subtitle .u72ed273e { color: var(--fp-orange) !important; }

.header .main-menu { margin-bottom: 24px; text-align: left; }
.header .main-menu li { margin-bottom: 2px; }
.header .main-menu li a {
    color: rgba(255, 255, 255, 0.82);
    padding: 11px 16px;
    border-radius: 6px;
    border-left: 3px solid transparent;
}
.header .main-menu li a:hover,
.header .main-menu li.active a {
    background: rgba(255, 255, 255, 0.08);
    color: var(--fp-white);
    transform: none;
    border-left-color: var(--fp-teal);
}

.fp-side-cta { margin: 0 0 18px; }
.fp-btn-primary,
.content-area .uf4c7decf {
    display: block;
    padding: 13px 18px !important;
    background: var(--fp-orange) !important;
    color: var(--fp-navy) !important;
    border: 0 !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
    text-align: center;
    text-decoration: none;
    box-shadow: none !important;
}
.fp-btn-primary:hover,
.content-area .uf4c7decf:hover { background: #FF8A33 !important; color: var(--fp-navy) !important; }
.fp-btn-primary i { margin-right: 6px; }

.fp-side-contact {
    display: flex; justify-content: center; gap: 10px;
    list-style: none; margin: 0 0 24px; padding: 0;
}
.fp-side-contact a {
    display: flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    color: var(--fp-white);
    text-decoration: none;
}
.fp-side-contact a:hover { background: var(--fp-teal); color: var(--fp-navy); }

.header .header-copyright {
    color: rgba(255, 255, 255, 0.55);
    font-size: 0.75rem;
    line-height: 1.7;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: 14px;
}
.header .header-copyright a { color: rgba(255, 255, 255, 0.8); }

/* ---------- Zurueck zur Startseite ---------- */
.fp-back-home {
    display: inline-flex; align-items: center; gap: 8px;
    margin: 0 0 24px;
    padding: 8px 14px;
    border: 1px solid var(--fp-line);
    border-radius: 6px;
    background: var(--fp-white);
    color: var(--fp-navy) !important;
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
}
.fp-back-home:hover { border-color: var(--fp-teal-dark); color: var(--fp-teal-dark) !important; }

/* ---------- Inhaltsbereich ---------- */
.content-area,
.animated-section { background: var(--fp-cloud); color: var(--fp-text); }
.animated-section { padding-top: 64px; }

.content-area h1, .content-area h2, .content-area h3,
.content-area h4, .content-area h5, .content-area h6 { color: var(--fp-navy); }
.content-area p, .content-area li, .content-area td,
.content-area .section-content, .content-area .booking-note { color: var(--fp-text); }

.content-area a { color: var(--fp-teal-dark); }
.content-area .highlight,
.content-area .block-title h3 span,
.content-area .page-title span { color: var(--fp-teal-dark) !important; }

/* Hero */
.content-area .title-block h1,
.content-area .title-block h2 { color: var(--fp-navy) !important; }
.content-area .home-tagline h3 span { letter-spacing: 0 !important; }
.content-area .home-tagline .u2d6908b3 { color: var(--fp-teal-dark) !important; }
.content-area .home-tagline .u7ad12126 { color: var(--fp-navy) !important; }
.content-area .home-tagline .ubab9b744 { color: #C2410C !important; } /* Orange-Ton mit 4.9:1 auf Cloud */

.content-area .benefit-secondary {
    background: var(--fp-white) !important;
    color: var(--fp-navy) !important;
    border: 1px solid var(--fp-navy) !important;
    border-radius: 6px !important;
}

/* Karten und Bloecke: weiss auf Cloud */
.content-area .benefit-card,
.content-area .service-item,
.content-area .review-item,
.content-area .certificate-item,
.content-area .info-block-w-icon,
.content-area .stat-item,
.content-area .achievement-item,
.content-area .process-step,
.content-area .value-item,
.content-area .timeline-item .right-part,
.content-area .partner-badges,
.content-area .home-cta,
.content-area .u57ec011f {
    background: var(--fp-white) !important;
    border: 1px solid var(--fp-line) !important;
    box-shadow: 0 1px 2px rgba(30, 42, 71, 0.06) !important;
    color: var(--fp-text) !important;
}
.content-area .benefit-card *,
.content-area .service-item *,
.content-area .review-item *,
.content-area .certificate-item *,
.content-area .info-block-w-icon *,
.content-area .process-step *,
.content-area .value-item *,
.content-area .achievement-item * { color: inherit; }
.content-area .benefit-card h3,
.content-area .service-item h3,
.content-area .process-step h4 { color: var(--fp-navy) !important; }
.content-area .benefit-eyebrow,
.content-area .stat-number,
.content-area .item-period,
.content-area .timeline-date { color: var(--fp-teal-dark) !important; }
.content-area .stat-label,
.content-area .item-company,
.content-area .reviewer,
.content-area .benefit-summary { color: var(--fp-muted) !important; }

/* Partner-Badges */
.content-area .u13001240,
.content-area .uee322e96 { background: var(--fp-cloud) !important; border-color: var(--fp-line) !important; }
.content-area .u256f8961 { color: var(--fp-navy) !important; }

/* Zeitleiste */
.content-area .timeline-item { border-left-color: var(--fp-line) !important; }
.content-area .timeline-item::before { background: var(--fp-teal) !important; }

/* Weisse Ex-Inline-Texte auf hellem Grund lesbar machen */
.content-area .u4367671b,
.content-area [class^="u"],
.content-area [class*=" u"] { border-color: var(--fp-line); }
.content-area .u4367671b { color: var(--fp-muted) !important; }

/* Pfeile und schwebender Termin-Button */
.lmpixels-arrow-right, .lmpixels-arrow-left { background: var(--fp-navy) !important; }
.menu-toggle { background: var(--fp-navy) !important; }

@media (max-width: 991px) {
    .animated-section { padding-top: 72px; }
}
/* --- automatisch erzeugt: helle Texte aus main.css auf Cloud-Grund umfaerben --- */
.content-area .home-tagline h2,
.content-area .home-tagline h3,
.content-area .home-description .lead,
.content-area .stat-label,
.content-area .home-competencies h4,
.content-area .home-industries h4,
.content-area .industry-tag,
.content-area .home-cta h4,
.content-area .home-cta p,
.content-area .home-achievements h4,
.content-area .achievement-content h5,
.content-area .achievement-content p,
.content-area .about-extended h4,
.content-area .about-extended em,
.content-area .professional-values h4,
.content-area .methodology-step h4,
.content-area .methodology-step p,
.content-area .timeline-content h4,
.content-area .timeline-content h5,
.content-area .timeline-content p,
.content-area .service-content h4,
.content-area .service-description,
.content-area .service-features h5,
.content-area .service-features li,
.content-area .service-benefits h5,
.content-area .service-benefits p,
.content-area .customer-benefits .benefit-icon,
.content-area .customer-benefits .benefit-content h4,
.content-area .customer-benefits .benefit-content p,
.content-area .package-header h4,
.content-area .package-content p,
.content-area .package-content li,
.content-area .audience-block h3,
.content-area .approach-block h3,
.content-area .audience-item h4,
.content-area .approach-item h4,
.content-area .audience-item p,
.content-area .approach-item p,
.content-area .step-content h4,
.content-area .step-content p,
.content-area .review-content p,
.content-area .project-benefits h5,
.content-area .project-benefits ul li,
.content-area .faq-item h4,
.content-area .faq-item p,
.content-area .benefit-summary { color: var(--fp-text) !important; }
.content-area .page-title h2 span,
.content-area .block-title h3 span,
.content-area .ci-icon i,
.content-area .ci-text ul li::before,
.content-area .item-period,
.content-area .cert-icon i,
.content-area .stat-number,
.content-area .competency-item i,
.content-area .achievement-icon i,
.content-area .value-item i,
.content-area .timeline-date,
.content-area .service-icon i,
.content-area .service-item:hover .service-icon i,
.content-area .service-features li::before,
.content-area .package-header i,
.content-area .package-content li::before,
.content-area .audience-item i,
.content-area .step-icon i,
.content-area .review-header h5,
.content-area .project-benefits ul li:before { color: var(--fp-teal-dark) !important; }
.content-area .competency-item span,
.content-area .value-item span { color: var(--fp-text) !important; }

/* Schlagwort-Chips in Bewertungen */
.content-area .review-highlights .highlight {
    background: var(--fp-cloud) !important;
    color: var(--fp-navy) !important;
    border: 1px solid var(--fp-line) !important;
}

/* Schwebender Termin-Button: primaerer CTA in Orange */
.floating-contact-btn {
    background: var(--fp-orange) !important;
    color: var(--fp-navy) !important;
    box-shadow: 0 4px 14px rgba(30, 42, 71, 0.25) !important;
}
.floating-contact-btn:hover { background: #FF8A33 !important; color: var(--fp-navy) !important; }

/* Branchen-Chips */
.content-area .industry-tag {
    background: var(--fp-white) !important;
    color: var(--fp-navy) !important;
    border: 1px solid var(--fp-line) !important;
}

/* Buttons im Inhalt: primaer Orange, sekundaer Navy-Rahmen */
.content-area .btn-primary {
    background: var(--fp-orange) !important;
    color: var(--fp-navy) !important;
    border: 0 !important;
    box-shadow: none !important;
}
.content-area .btn-secondary {
    background: var(--fp-white) !important;
    color: var(--fp-navy) !important;
    border: 1px solid var(--fp-navy) !important;
}

/* Ex-Inline-Klassen (utilities.css) mit hellem Text bzw. dunklem Grund im Inhaltsbereich */
.content-area .u0c068655,
.content-area .u256f8961,
.content-area .u3d91c140,
.content-area .u4367671b,
.content-area .u5d3a96a4,
.content-area .u65efc6c7,
.content-area .u77804e7b,
.content-area .u827a44a0,
.content-area .u8ab84e88,
.content-area .u97129733,
.content-area .u9c562976,
.content-area .u9de79df1,
.content-area .ua117f342,
.content-area .ub019b991,
.content-area .ub77e0909,
.content-area .ub8c19f38,
.content-area .ucbd4ed4b,
.content-area .ud6a10838,
.content-area .ud9dce6af,
.content-area .ue3dc1edf,
.content-area .uee467d26,
.content-area .ueec3719d,
.content-area .uf3f09148 { color: var(--fp-text) !important; }
.content-area .u57ec011f,
.content-area .u67f51892,
.content-area .u8ab84e88,
.content-area .u9de79df1,
.content-area .ub019b991,
.content-area .ubd717df8,
.content-area .udc9e7f46,
.content-area .ue3dc1edf,
.content-area .uee467d26,
.content-area .ueec3719d,
.content-area .ufce02325 { background: var(--fp-white) !important; border-color: var(--fp-line) !important; }
.content-area .u5d3a96a4 { color: var(--fp-muted) !important; }
.content-area .u86dd1e20 { background: var(--fp-white) !important; border: 1px solid var(--fp-line) !important; }
.content-area .timeline-item .right-part { padding: 18px 22px; border-radius: 8px; }
@media (max-width: 600px) { .content-area .timeline-item .right-part { padding: 14px 14px; } }

/* Barrierefreiheit: Fokusrahmen auf hellem Grund, Orange-Buttons mit Navy-Schrift (4.9:1) */
.content-area a:focus-visible,
.content-area button:focus-visible,
.content-area [tabindex]:focus-visible,
.floating-contact-btn:focus-visible { outline: 3px solid var(--fp-navy) !important; outline-offset: 2px; }
.header a:focus-visible { outline: 3px solid var(--fp-teal) !important; outline-offset: 2px; }
.fp-btn-primary i, .content-area .uf4c7decf i, .floating-contact-btn i { color: inherit !important; }
