/* ===== HRklar Design System ===== */
:root {
    --primary:      #0d9488;
    --primary-dark: #0f766e;
    --primary-light:#ccfbf1;
    --dark:         #0f172a;
    --slate:        #1e293b;
    --text:         #1f2937;
    --body:         #4b5563;
    --subtle:       #6b7280;
    --muted:        #9ca3af;
    --bg-light:     #f8fafc;
    --bg-teal:      #f0fdfa;
    --border:       #e5e7eb;
    --white:        #ffffff;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, sans-serif;
    font-size: 1rem;
    line-height: 1.7;
    color: var(--body);
    background: var(--white);
    -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; display: block; }
a { color: var(--primary-dark); text-decoration: none; transition: color 0.2s; }
a:hover { color: var(--primary); }
ul { list-style: none; }

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}

/* ===== TOP BAR ===== */
.hk-topbar {
    background: #1e3a5f;
    height: 36px;
    position: sticky;
    top: 0;
    z-index: 101;
    display: flex;
    align-items: center;
}
.hk-topbar-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    justify-content: flex-end;
}
.hk-topbar-label {
    font-size: 0.72rem;
    color: rgba(255,255,255,0.70);
    margin-right: 0.25rem;
    white-space: nowrap;
}
.hk-topbar-sites { display: flex; gap: 0.4rem; }
.hk-topbar-site {
    font-size: 0.72rem;
    font-weight: 600;
    padding: 0.18rem 0.6rem;
    border-radius: 50px;
    text-decoration: none;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    white-space: nowrap;
}
.hk-topbar-site--lk {
    border: 1px solid rgba(37,99,235,0.45);
    color: #93c5fd;
}
.hk-topbar-site--lk:hover { background: #2563eb; color: #fff; border-color: #2563eb; }
.hk-topbar-site--fk {
    border: 1px solid rgba(99,102,241,0.45);
    color: #a5b4fc;
}
.hk-topbar-site--fk:hover { background: #4338ca; color: #fff; border-color: #4338ca; }
.hk-topbar-site--rk {
    border: 1px solid rgba(234,88,12,0.45);
    color: #fdba74;
}
.hk-topbar-site--rk:hover { background: #e11d48; color: #fff; border-color: #e11d48; }
.hk-topbar-site--ak {
    border: 1px solid rgba(124,58,237,0.45);
    color: #c4b5fd;
}
.hk-topbar-site--ak:hover { background: #e11d48; color: #fff; border-color: #e11d48; }
.hk-topbar-site--gk {
    border: 1px solid rgba(22,163,74,0.45);
    color: #86efac;
}
.hk-topbar-site--gk:hover { background: #16a34a; color: #fff; border-color: #16a34a; }
.hk-topbar-site--zk {
    border: 1px solid rgba(8,145,178,0.45);
    color: #67e8f9;
}
.hk-topbar-site--zk:hover { background: #0891b2; color: #fff; border-color: #0891b2; }

/* ===== NAVIGATION ===== */
.hk-nav {
    position: sticky;
    top: 0;
    z-index: 100;
    background: var(--white);
    border-bottom: 1px solid transparent;
    transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
}
.hk-nav.hk-nav-scrolled {
    background: rgba(255,255,255,0.97);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-color: var(--border);
    box-shadow: 0 2px 20px rgba(0,0,0,0.08);
}
.hk-nav-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    transition: height 0.2s;
}
.hk-nav.hk-nav-scrolled .hk-nav-container { height: 64px; }
.hk-nav.hk-nav-scrolled .hk-logo-icon { width: 32px; height: 32px; }
.hk-nav.hk-nav-scrolled .hk-logo-wordmark { font-size: 1.45rem; }
.hk-nav.hk-nav-scrolled .hk-logo { gap: 0.5rem; }
.hk-logo {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.7rem;
    text-decoration: none;
    flex-shrink: 0;
    line-height: 1.1;
    transition: gap 0.2s;
}
.hk-logo-icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    transition: width 0.2s, height 0.2s;
}
.hk-logo-text {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
}
.hk-logo-wordmark {
    font-size: 1.85rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1;
    transition: font-size 0.2s;
}
@media (prefers-reduced-motion: reduce) {
    .hk-nav, .hk-nav-container, .hk-logo, .hk-logo-icon, .hk-logo-wordmark { transition: none; }
}
.hk-logo-hr   { color: var(--dark); }
.hk-logo-klar { color: var(--primary); }
.hk-logo-service {
    font-size: 0.6rem;
    font-weight: 400;
    color: var(--subtle);
    letter-spacing: 0.01em;
    white-space: nowrap;
}
.hk-logo-service strong {
    font-weight: 600;
    color: var(--primary-dark);
}

.hk-nav-menu ul {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}
.hk-nav-menu a {
    display: block;
    padding: 0.5rem 0.875rem;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--text);
    border-radius: 8px;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s;
}
.hk-nav-menu a:hover { background: var(--bg-teal); color: var(--primary); }

.hk-nav-cta {
    background: var(--primary) !important;
    color: var(--white) !important;
    border-radius: 50px !important;
    padding: 0.5rem 1.25rem !important;
    font-weight: 700 !important;
}
.hk-nav-cta:hover { background: var(--primary-dark) !important; }
.hk-nav-sister {
    font-size: 0.82rem !important;
    color: var(--subtle) !important;
    border: 1px solid var(--border) !important;
    border-radius: 50px !important;
    padding: 0.35rem 0.9rem !important;
    font-weight: 500 !important;
}
.hk-nav-sister:hover { color: var(--primary) !important; border-color: var(--primary) !important; background: transparent !important; }

/* Dropdown */
.hk-has-dropdown { position: relative; }
.hk-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 0.5rem;
    min-width: 220px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.10);
    z-index: 200;
}
.hk-has-dropdown:hover .hk-dropdown,
.hk-has-dropdown.hk-dropdown-open .hk-dropdown { display: block; }
.hk-dropdown a {
    display: block;
    padding: 0.6rem 1rem;
    border-radius: 8px;
    font-size: 0.9rem;
    color: var(--text);
}
.hk-dropdown a:hover { background: var(--bg-teal); color: var(--primary); }

/* Mobile toggle */
.hk-mobile-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
}
.hk-mobile-toggle span {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--text);
    border-radius: 2px;
    transition: transform 0.2s;
}

/* ===== BUTTONS ===== */
.btn {
    display: inline-block;
    font-weight: 700;
    font-size: 1rem;
    padding: 0.875rem 2rem;
    border-radius: 50px;
    text-decoration: none;
    transition: background 0.18s, color 0.18s, filter 0.18s, border-color 0.18s, transform 0.15s;
    cursor: pointer;
    border: none;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary {
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
}
.btn-primary:hover { filter: brightness(0.88); color: #fff; }
.btn-outline {
    border: 2px solid var(--primary);
    color: var(--primary);
    background: transparent;
}
.btn-outline:hover { background: var(--primary); color: #fff; border-color: var(--primary); }
.btn-white {
    background: var(--white);
    color: var(--primary-dark);
}
.btn-white:hover { background: #e8f5f3; color: var(--primary-dark); }
.btn-white-outline {
    border: 2px solid rgba(255,255,255,0.65);
    color: var(--white);
    background: transparent;
}
.btn-white-outline:hover { background: rgba(255,255,255,0.70); border-color: rgba(255,255,255,0.9); }
.btn-large { padding: 1rem 2.5rem; font-size: 1.05rem; }

/* ===== HERO ===== */
.hk-hero {
    padding: 80px 0 60px;
    background: linear-gradient(135deg, #0f172a 0%, #0d4a3a 100%);
    position: relative;
    overflow: hidden;
}
.hk-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 60% at 70% 50%, rgba(13,148,136,0.18) 0%, transparent 70%);
    pointer-events: none;
}
.hk-hero-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
    position: relative;
}
.hk-hero-eyebrow {
    display: inline-block;
    background: rgba(13,148,136,0.25);
    border: 1px solid rgba(13,148,136,0.5);
    color: #5eead4;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.3rem 0.9rem;
    border-radius: 50px;
    margin-bottom: 1.25rem;
}
.hk-hero h1 {
    font-size: clamp(2rem, 4.5vw, 3.25rem);
    font-weight: 800;
    line-height: 1.15;
    color: var(--white);
    margin-bottom: 1.25rem;
}
.hk-hero h1 .hk-highlight {
    background: linear-gradient(135deg, #5eead4, #0d9488);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.hk-hero-sub {
    font-size: 1.1rem;
    color: #94a3b8;
    line-height: 1.8;
    margin-bottom: 2rem;
}
.hk-hero-btns { display: flex; gap: 1rem; flex-wrap: wrap; }
.hk-hero-trust {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin-top: 2rem;
    padding-top: 1.75rem;
    border-top: 1px solid rgba(255,255,255,0.18);
}
.hk-trust-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    color: rgba(255,255,255,0.82);
}
.hk-trust-item svg { color: #5eead4; }
.hk-trust-item strong { color: #fff; font-weight: 700; }

/* Hero Visual / Card */
.hk-hero-visual {
    display: flex;
    justify-content: center;
    align-items: center;
}
.hk-hero-card {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 20px;
    padding: 2rem;
    width: 100%;
    max-width: 400px;
    backdrop-filter: blur(8px);
}
.hk-hero-card-title {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5eead4;
    margin-bottom: 1.25rem;
}
.hk-hero-card-item {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 0.875rem 0;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}
.hk-hero-card-item:last-child { border-bottom: none; }
.hk-hero-card-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: rgba(13,148,136,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #5eead4;
    font-size: 1rem;
}
.hk-hero-card-text strong {
    display: block;
    font-size: 0.9rem;
    font-weight: 700;
    color: #e2e8f0;
    margin-bottom: 0.15rem;
}
.hk-hero-card-text span {
    font-size: 0.78rem;
    color: #94a3b8;
}

/* Light hero variant */
.hk-hero--light {
    background: linear-gradient(135deg, var(--bg-teal), #e0f7f4);
}
.hk-hero--light h1 { color: var(--dark); }
.hk-hero--light .hk-hero-sub { color: var(--body); }
.hk-hero--light .hk-trust-item { color: var(--subtle); }
.hk-hero--light .hk-trust-item strong { color: var(--text); }
.hk-hero--light .hk-hero-trust { border-top-color: rgba(0,0,0,0.1); }
.hk-hero--light::before { display: none; }

/* ===== SECTIONS ===== */
.hk-section { padding: 80px 0; }
.hk-section--gray { background: var(--bg-light); }
.hk-section--teal { background: var(--bg-teal); }
.hk-section--dark {
    background: var(--slate);
    color: var(--white);
}

.hk-section-header {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 3.5rem;
}
.hk-eyebrow {
    display: inline-block;
    background: var(--bg-teal);
    color: var(--primary);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.25rem 0.8rem;
    border-radius: 50px;
    margin-bottom: 0.875rem;
}
.hk-section-title {
    font-size: clamp(1.75rem, 3.5vw, 2.5rem);
    font-weight: 800;
    color: var(--text);
    margin-bottom: 0.75rem;
    line-height: 1.2;
}
.hk-section--dark .hk-section-title { color: var(--white); }
.hk-section-sub {
    font-size: 1.05rem;
    color: var(--subtle);
    line-height: 1.7;
}
.hk-section--dark .hk-section-sub { color: #94a3b8; }

/* ===== CARDS ===== */
.hk-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.hk-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 2rem;
    transition: transform 0.2s, box-shadow 0.2s;
}
.hk-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}
.hk-card--featured { border-top: 4px solid var(--primary); }
.hk-card-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
}
.hk-card-icon svg { width: 26px; height: 26px; }
.hk-card h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.75rem;
}
.hk-card p {
    font-size: 0.95rem;
    color: var(--body);
    line-height: 1.7;
    margin-bottom: 1.25rem;
}
.hk-card-link {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--primary);
}
.hk-card-link:hover { text-decoration: underline; }

/* ===== STATS / TRUST BAR ===== */
.hk-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: var(--border);
    border-radius: 16px;
    overflow: hidden;
}
.hk-stat {
    background: var(--white);
    padding: 2rem 1.5rem;
    text-align: center;
}
.hk-stat-value {
    font-size: 2.25rem;
    font-weight: 800;
    color: var(--primary);
    line-height: 1;
    margin-bottom: 0.4rem;
}
.hk-stat-label {
    font-size: 0.85rem;
    color: var(--subtle);
    line-height: 1.4;
}

/* ===== PROCESS STEPS ===== */
.hk-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    position: relative;
}
.hk-steps::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 10%;
    right: 10%;
    height: 2px;
    background: linear-gradient(90deg, var(--primary-light), var(--primary));
    z-index: 0;
}
.hk-step { text-align: center; position: relative; z-index: 1; }
.hk-step-num {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.1rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    box-shadow: 0 4px 12px rgba(13,148,136,0.35);
}
.hk-step h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
}
.hk-step p { font-size: 0.88rem; color: var(--body); }

/* ===== FAQ ===== */
.hk-faq-list { max-width: 760px; margin: 0 auto; }
.hk-faq-item {
    border: 1px solid var(--border);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    overflow: hidden;
}
.hk-faq-q {
    width: 100%;
    padding: 1.1rem 1.5rem;
    background: var(--bg-light);
    font-weight: 600;
    font-size: 0.97rem;
    color: var(--text);
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: none;
    text-align: left;
    gap: 1rem;
}
.hk-faq-q::after {
    content: '+';
    font-size: 1.3rem;
    color: var(--primary);
    font-weight: 700;
    flex-shrink: 0;
}
.hk-faq-a {
    display: none;
    padding: 1.1rem 1.5rem;
    color: var(--body);
    line-height: 1.8;
    font-size: 0.95rem;
    border-top: 1px solid var(--border);
}
.hk-faq-item.active .hk-faq-a { display: block; }
.hk-faq-item.active .hk-faq-q::after { content: '−'; }

/* ===== CTA BAND ===== */
.hk-cta-band {
    background: linear-gradient(135deg, #0f172a, #0d4a3a);
    padding: 80px 24px;
    text-align: center;
    position: relative;
    overflow: hidden;
}
.hk-cta-band::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 50% 80% at 50% 50%, rgba(13,148,136,0.2) 0%, transparent 70%);
}
.hk-cta-band h2 {
    font-size: clamp(1.75rem, 3.5vw, 2.5rem);
    font-weight: 800;
    color: var(--white);
    margin-bottom: 1rem;
    position: relative;
}
.hk-cta-band p {
    font-size: 1.05rem;
    color: #94a3b8;
    max-width: 560px;
    margin: 0 auto 2rem;
    line-height: 1.7;
    position: relative;
}
.hk-cta-band-btns {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
    position: relative;
}

/* ===== LOHNKLAR PARTNER BAND ===== */
.hk-partner-band {
    background: var(--bg-teal);
    border-top: 1px solid #99f6e4;
    border-bottom: 1px solid #99f6e4;
    padding: 2.5rem 24px;
}
.hk-partner-band-inner {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
}
.hk-partner-band-text { flex: 1; min-width: 260px; }
.hk-partner-band-text strong {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.3rem;
}
.hk-partner-band-text p { font-size: 0.9rem; color: var(--body); margin: 0; }
.hk-partner-band a.btn { white-space: nowrap; flex-shrink: 0; }

/* ===== BLOG INDEX ===== */
.hk-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.hk-blog-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
}
.hk-blog-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 28px rgba(0,0,0,0.08);
}
.hk-blog-card-body { padding: 1.5rem; }
.hk-blog-cat {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 0.2rem 0.65rem;
    border-radius: 50px;
    margin-bottom: 0.75rem;
    background: var(--bg-teal);
    color: var(--primary-dark);
}
.hk-blog-card h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.6rem;
    line-height: 1.35;
}
.hk-blog-card p { font-size: 0.88rem; color: var(--body); margin-bottom: 1rem; }
.hk-blog-card-meta { font-size: 0.78rem; color: var(--subtle); }
.hk-blog-card-link {
    display: block;
    text-align: center;
    padding: 0.75rem;
    background: var(--bg-light);
    color: var(--primary);
    font-weight: 600;
    font-size: 0.9rem;
    border-top: 1px solid var(--border);
    transition: background 0.15s;
}
.hk-blog-card-link:hover { background: var(--bg-teal); }

/* ===== BLOG ARTICLE ===== */
.hk-article-header {
    padding: 3.5rem 0 2rem;
    background: linear-gradient(135deg, #f0fdfa, #e0f7f4);
}
.hk-article-header-inner { max-width: 800px; margin: 0 auto; padding: 0 1.5rem; }
/* Breadcrumb inside article header (light background variant) */
.hk-article-header .hk-breadcrumb-inner { color: rgba(31,41,55,0.4); margin-bottom: 0.75rem; }
.hk-article-header h1 {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    color: var(--text);
    margin-bottom: 1rem;
    line-height: 1.25;
}
.hk-article-meta {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    color: var(--subtle);
    font-size: 0.88rem;
}
.hk-article-meta strong { color: var(--text); }
.hk-article-body { max-width: 800px; margin: 0 auto; padding: 3rem 1.5rem 4rem; }
.hk-article-body h2 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text);
    margin: 2.5rem 0 1rem;
    padding-top: 1rem;
    border-top: 2px solid var(--border);
}
.hk-article-body h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text);
    margin: 1.75rem 0 0.75rem;
}
.hk-article-body p { color: var(--body); line-height: 1.8; margin-bottom: 1.25rem; }
.hk-article-body ul, .hk-article-body ol {
    color: var(--body);
    line-height: 1.8;
    margin: 1rem 0 1.25rem 1.5rem;
}
.hk-article-body li { margin-bottom: 0.5rem; }
.hk-article-body strong { color: var(--text); }
.hk-article-body a { color: var(--primary); }

.hk-tldr { background: #f0fdf4; border-left: 4px solid #0d9488; border-radius: 0 12px 12px 0; padding: 1.1rem 1.4rem; margin: 0 0 2rem; box-shadow: 0 2px 8px rgba(13,148,136,.08); }
.hk-tldr-label { font-size: .7rem; font-weight: 800; letter-spacing: .1em; color: #0d9488; text-transform: uppercase; margin-bottom: .35rem; }
.hk-tldr p { font-size: .975rem; line-height: 1.65; color: #065f46; margin: 0; font-weight: 500; }

.hk-info-box {
    background: #eff6ff;
    border-left: 4px solid #2563eb;
    padding: 1.25rem 1.5rem;
    border-radius: 0 8px 8px 0;
    margin: 1.5rem 0;
}
.hk-info-box p { margin: 0; color: #1e40af; }
.hk-warn-box {
    background: #fefce8;
    border-left: 4px solid #f59e0b;
    padding: 1.25rem 1.5rem;
    border-radius: 0 8px 8px 0;
    margin: 1.5rem 0;
}
.hk-warn-box p { margin: 0; color: #92400e; }
.hk-teal-box {
    background: var(--bg-teal);
    border-left: 4px solid var(--primary);
    padding: 1.25rem 1.5rem;
    border-radius: 0 8px 8px 0;
    margin: 1.5rem 0;
}
.hk-teal-box p { margin: 0; color: var(--primary-dark); }

.hk-table-wrap { overflow-x: auto; margin: 1.5rem 0; }
.hk-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.hk-table th { background: var(--slate); color: #fff; padding: 0.75rem 1rem; text-align: left; font-weight: 600; }
.hk-table td { padding: 0.65rem 1rem; border-bottom: 1px solid var(--border); color: var(--body); }
.hk-table tr:nth-child(even) td { background: var(--bg-light); }

.hk-toc {
    background: var(--bg-teal);
    border: 1px solid #99f6e4;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin: 2rem 0;
}
.hk-toc h4 {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--primary-dark);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 0.75rem;
}
.hk-toc ol { margin: 0 0 0 1.25rem; padding: 0; }
.hk-toc li { margin-bottom: 0.3rem; font-size: 0.9rem; }
.hk-toc a { color: var(--primary); text-decoration: none; }
.hk-toc a:hover { text-decoration: underline; }

.hk-article-cta {
    background: linear-gradient(135deg, #0f172a, #0d4a3a);
    color: #fff;
    padding: 2rem;
    border-radius: 16px;
    margin: 3rem 0;
    text-align: center;
}
.hk-article-cta h3 {
    font-size: 1.35rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 0.75rem;
    border: none;
    padding: 0;
    margin-top: 0;
}
.hk-article-cta p { color: #94a3b8; margin-bottom: 1.5rem; line-height: 1.7; }

.hk-author-box {
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    background: var(--bg-light);
    border-radius: 12px;
    padding: 1.5rem;
    margin: 3rem 0 2rem;
    border: 1px solid var(--border);
}
.hk-author-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    object-position: top center;
    flex-shrink: 0;
}
.hk-author-info strong { display: block; color: var(--text); font-size: 1rem; margin-bottom: 0.2rem; }
.hk-author-info span { color: var(--subtle); font-size: 0.85rem; display: block; margin-bottom: 0.5rem; }
.hk-author-info p { color: var(--body); font-size: 0.9rem; line-height: 1.6; margin: 0; }

.hk-related { background: var(--bg-light); padding: 2rem; border-radius: 12px; margin: 2rem 0; }
.hk-related h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 1rem; border: none; padding: 0; margin-top: 0; }
.hk-related ul { list-style: none; padding: 0; margin: 0; }
.hk-related li { margin-bottom: 0.5rem; }
.hk-related a { color: var(--primary); text-decoration: none; font-size: 0.95rem; }
.hk-related a:hover { text-decoration: underline; }

/* ===== BREADCRUMB ===== */
/* Standalone breadcrumb (blog articles, light background) */
.hk-breadcrumb { margin-bottom: 0; background: transparent; padding: 0; }
.hk-breadcrumb-inner {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    flex-wrap: wrap;
    font-size: 0.75rem;
    font-weight: 500;
    color: rgba(31,41,55,0.45);
    margin-bottom: 0.6rem;
}
.hk-breadcrumb a { color: rgba(13,148,136,0.75); text-decoration: none; }
.hk-breadcrumb a:hover { color: var(--primary); text-decoration: underline; }
/* Breadcrumb inside dark hero sections */
.hk-hero .hk-breadcrumb-inner { color: rgba(255,255,255,0.70); }
.hk-hero .hk-breadcrumb a { color: rgba(255,255,255,0.75); }
.hk-hero .hk-breadcrumb a:hover { color: #fff; text-decoration: underline; }

/* ===== FOOTER (Single-Row, Boutique) ===== */
.hk-footer {
    background: var(--dark);
    color: #94a3b8;
    padding-top: 2.5rem;
    padding-bottom: 1.5rem;
}
.hk-footer-row {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    flex-wrap: wrap;
}
.hk-footer-row .hk-logo { font-size: 1.3rem; text-decoration: none; display: inline-flex; flex-direction: row; align-items: center; gap: 0.5rem; flex-shrink: 0; }
.hk-footer-row .hk-logo-icon { width: 28px; height: 28px; flex-shrink: 0; opacity: 0.9; }
.hk-footer-row .hk-logo-wordmark { display: block; }
.hk-footer-row .hk-logo-hr { color: #fff; }
.hk-footer-row .hk-logo-klar { color: var(--primary); }

.hk-footer-links {
    flex: 1 1 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0.5rem 1.25rem;
    font-size: 0.85rem;
}
.hk-footer-links a {
    color: #cbd5e1;
    text-decoration: none;
    transition: color 0.15s;
}
.hk-footer-links a:hover { color: #5eead4; }
.hk-footer-sep {
    color: #475569;
    font-weight: 300;
    user-select: none;
}

.hk-footer-contact-block {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.hk-footer-contact-link {
    font-size: 0.82rem;
    color: #94a3b8;
    text-decoration: none;
    transition: color 0.15s;
    white-space: nowrap;
}
.hk-footer-contact-link:hover { color: #5eead4; }

.hk-footer-legal {
    max-width: 1280px;
    margin: 1.75rem auto 0;
    padding: 1.25rem 24px 0;
    border-top: 1px solid rgba(255,255,255,0.07);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
}
.hk-footer-tagline {
    font-size: 0.78rem;
    color: #64748b;
    margin: 0;
    max-width: 60%;
    line-height: 1.5;
}
.hk-footer-legal-links {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    font-size: 0.78rem;
}
.hk-footer-legal-links a {
    color: #94a3b8;
    text-decoration: none;
    transition: color 0.15s;
}
.hk-footer-legal-links a:hover { color: #5eead4; text-decoration: underline; }
.hk-footer-legal-links span { color: #475569; }
#hk-footer-cookie-reset { cursor: pointer; }

/* Legacy 4-Spalten-Footer (Backwards-Compat fuer Pages mit altem Markup) */
.hk-footer-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 4rem 24px 2.5rem;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 3rem;
}
.hk-footer-brand .hk-logo { font-size: 1.4rem; margin-bottom: 1rem; text-decoration: none; display: inline-flex; flex-direction: row; align-items: center; gap: 0.5rem; }
.hk-footer-brand .hk-logo-icon { width: 28px; height: 28px; flex-shrink: 0; opacity: 0.9; }
.hk-footer-brand .hk-logo-text { display: flex; flex-direction: column; gap: 0.05rem; }
.hk-footer-brand .hk-logo-wordmark { display: block; }
.hk-footer-brand .hk-logo-hr { color: #fff; }
.hk-footer-brand .hk-logo-klar { color: var(--primary); }
.hk-footer-brand .hk-logo-service { display: block; font-size: 0.6rem; font-weight: 400; color: #94a3b8; letter-spacing: 0.02em; }
.hk-footer-brand .hk-logo-service strong { color: #cbd5e1; font-weight: 600; }
.hk-footer-brand p { font-size: 0.88rem; line-height: 1.7; margin-bottom: 0.75rem; }
.hk-footer-contact { display: flex; flex-direction: column; gap: 0.4rem; margin-top: 0.75rem; margin-bottom: 1.25rem; }
.hk-footer-contact a { font-size: 0.85rem; color: #94a3b8; transition: color 0.15s; text-decoration: none; }
.hk-footer-contact a:hover { color: #5eead4; }
.hk-footer-cta {
    display: inline-block;
    padding: 0.6rem 1.4rem;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: #fff;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 50px;
    text-decoration: none;
    transition: opacity 0.2s;
}
.hk-footer-cta:hover { opacity: 0.88; color: #fff; }
.hk-footer-partner { font-size: 0.82rem !important; }
.hk-footer-partner a { color: #5eead4; font-weight: 600; }
.hk-footer-partner a:hover { color: #fff; }
.hk-footer-col h3 {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #e2e8f0;
    margin-bottom: 1rem;
}
.hk-footer-col ul { display: flex; flex-direction: column; gap: 0.5rem; }
.hk-footer-col a { font-size: 0.88rem; color: #94a3b8; transition: color 0.15s; }
.hk-footer-col a:hover { color: #5eead4; }
.hk-footer-subhead {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #64748b;
    margin-top: 1.25rem;
    margin-bottom: 0.5rem;
}
.hk-footer-bottom {
    max-width: 1200px;
    margin: 0 auto;
    padding: 1.5rem 24px;
    border-top: 1px solid rgba(255,255,255,0.07);
    font-size: 0.82rem;
    color: #64748b;
}
.hk-footer-bottom a { color: #64748b; }
.hk-footer-bottom a:hover { color: #5eead4; }

/* ===== REVEAL ANIMATION ===== */
.reveal { opacity: 0; transform: translateY(20px); transition: opacity 0.55s ease, transform 0.55s ease; }
.reveal.visible { opacity: 1; transform: none; }

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
    .hk-cards-grid { grid-template-columns: repeat(2, 1fr); }
    .hk-stats { grid-template-columns: repeat(2, 1fr); }
    .hk-footer-container { grid-template-columns: 1fr 1fr; gap: 2rem; }
    .hk-footer-row { gap: 1.5rem; }
    .hk-footer-links { font-size: 0.82rem; gap: 0.4rem 1rem; }
}

@media (max-width: 768px) {
    .hk-topbar { display: none; }
    .hk-nav { top: 0; }

    .hk-hero-container { grid-template-columns: 1fr; gap: 2.5rem; }
    .hk-hero-visual { display: none; }
    .hk-hero { padding: 56px 0 48px; }
    .hk-section { padding: 56px 0; }
    .hk-cards-grid { grid-template-columns: 1fr; }
    .hk-steps { grid-template-columns: 1fr 1fr; }
    .hk-steps::before { display: none; }
    .hk-blog-grid { grid-template-columns: 1fr; }
    .hk-footer-container { grid-template-columns: 1fr; gap: 2rem; padding-bottom: 1.5rem; }
    .hk-footer-row { flex-direction: column; align-items: flex-start; gap: 1.5rem; }
    .hk-footer-links { justify-content: flex-start; }
    .hk-footer-contact-block { justify-content: flex-start; gap: 0.75rem 1rem; width: 100%; }
    .hk-footer-legal { flex-direction: column; align-items: flex-start; gap: 0.75rem; }
    .hk-footer-tagline { max-width: 100%; }
    .hk-footer-sep { display: none; }
    .hk-mobile-toggle { display: flex; }
    .hk-nav-menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: var(--white);
        border-bottom: 1px solid var(--border);
        padding: 1rem;
        box-shadow: 0 8px 24px rgba(0,0,0,0.1);
        max-height: calc(100vh - 80px);
        overflow-y: auto;
    }
    .hk-nav-menu.hk-nav-open { display: block; }
    .hk-nav-menu ul { flex-direction: column; gap: 0.25rem; }
    .hk-dropdown { position: static; box-shadow: none; border: none; background: var(--bg-light); display: none; }
    .hk-has-dropdown.hk-dropdown-open .hk-dropdown { display: block; }
    .hk-author-box { flex-direction: column; }
    .hk-partner-band-inner { flex-direction: column; }
}

@media (max-width: 480px) {
    .hk-steps { grid-template-columns: 1fr; }
    .hk-stats { grid-template-columns: 1fr 1fr; }
    .hk-hero-btns { flex-direction: column; }
    .hk-cta-band-btns { flex-direction: column; align-items: center; }
}

/* ============================================================
   PAGE-SPECIFIC STYLES (migrated from inline <style> blocks)
   ============================================================ */

/* ===== UTILITY CLASSES ===== */
.hk-section-header--narrow { max-width: 700px; }
.hk-link-primary { color: var(--primary); font-weight: 600; }
.hk-section-title--white { color: #fff; }
.btn--full { width: 100%; text-align: center; display: block; }
.hk-eyebrow--dark { background: rgba(13,148,136,0.2); color: #5eead4; }
.hk-hero-eyebrow--teal { background: var(--bg-teal); border-color: #99f6e4; color: var(--primary-dark); }
.hk-relative { position: relative; }
.hk-text-center-mt { text-align: center; margin-top: 2rem; }
.hk-overflow-x-auto { overflow-x: auto; }
.hk-eyebrow--block { margin-bottom: 1rem; display: inline-block; }
.hk-eyebrow--block-lg { margin-bottom: 1.25rem; display: inline-block; }

/* ===== INTERIM HR, Prefix: ihr- ===== */
.ihr-cases-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
}
.ihr-case-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 1.75rem;
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    transition: transform 0.2s, box-shadow 0.2s;
}
.ihr-case-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(0,0,0,0.07);
}
.ihr-case-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ihr-case-icon svg { width: 24px; height: 24px; }
.ihr-case-body h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.4rem;
    line-height: 1.35;
}
.ihr-case-body p {
    font-size: 0.88rem;
    color: var(--body);
    line-height: 1.65;
    margin: 0;
}
.ihr-tasks-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.875rem 2.5rem;
}
.ihr-task-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border);
}
.ihr-task-check {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
}
.ihr-task-check svg { width: 12px; height: 12px; }
.ihr-task-item span {
    font-size: 0.95rem;
    color: var(--body);
    line-height: 1.6;
}
.ihr-intro-band {
    background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%);
    padding: 3rem 24px;
}
.ihr-intro-band-inner {
    max-width: 900px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: center;
}
.ihr-intro-band h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--white);
    line-height: 1.3;
    margin-bottom: 0.75rem;
}
.ihr-intro-band p {
    font-size: 0.95rem;
    color: #94a3b8;
    line-height: 1.75;
    margin: 0;
}
.ihr-stats-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    background: rgba(255,255,255,0.70);
    border-radius: 12px;
    overflow: hidden;
}
.ihr-stat {
    background: rgba(255,255,255,0.06);
    padding: 1.5rem 1rem;
    text-align: center;
}
.ihr-stat-val {
    font-size: 2rem;
    font-weight: 800;
    color: #5eead4;
    line-height: 1;
    margin-bottom: 0.3rem;
}
.ihr-stat-label {
    font-size: 0.78rem;
    color: #94a3b8;
    line-height: 1.4;
}
.ihr-process {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    position: relative;
}
.ihr-process::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 15%;
    right: 15%;
    height: 2px;
    background: linear-gradient(90deg, var(--primary-light), var(--primary));
    z-index: 0;
}
.ihr-process-step { text-align: center; position: relative; z-index: 1; }
.ihr-process-num {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.2rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.25rem;
    box-shadow: 0 4px 16px rgba(13,148,136,0.35);
}
.ihr-process-step h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.6rem;
}
.ihr-process-step p {
    font-size: 0.88rem;
    color: var(--body);
    line-height: 1.7;
}

/* ===== HR-BERATUNG, Prefix: hrb- ===== */
.hrb-fields-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}
.hrb-field-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 2rem;
    transition: transform 0.2s, box-shadow 0.2s;
    position: relative;
    overflow: hidden;
}
.hrb-field-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--primary), var(--primary-dark));
    opacity: 0;
    transition: opacity 0.2s;
}
.hrb-field-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}
.hrb-field-card:hover::before { opacity: 1; }
.hrb-field-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
}
.hrb-field-icon svg { width: 26px; height: 26px; }
.hrb-field-card h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
}
.hrb-field-card .hrb-tag {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    background: var(--bg-teal);
    color: var(--primary-dark);
    padding: 0.2rem 0.65rem;
    border-radius: 50px;
    margin-bottom: 0.875rem;
}
.hrb-field-card p {
    font-size: 0.93rem;
    color: var(--body);
    line-height: 1.7;
}
.hrb-field-card ul {
    margin: 0.875rem 0 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}
.hrb-field-card ul li {
    font-size: 0.88rem;
    color: var(--body);
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.hrb-field-card ul li::before {
    content: '→';
    color: var(--primary);
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 1px;
}
.hrb-approach {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: start;
}
.hrb-approach-left h2 {
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 800;
    color: var(--text);
    line-height: 1.25;
    margin-bottom: 1.25rem;
}
.hrb-approach-left p {
    font-size: 0.97rem;
    color: var(--body);
    line-height: 1.8;
    margin-bottom: 1rem;
}
.hrb-approach-left blockquote {
    border-left: 4px solid var(--primary);
    padding: 1rem 1.25rem;
    background: var(--bg-teal);
    border-radius: 0 8px 8px 0;
    margin: 1.5rem 0;
    font-size: 0.95rem;
    color: var(--primary-dark);
    font-style: italic;
    line-height: 1.7;
}
.hrb-approach-right {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}
.hrb-principle {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}
.hrb-principle-num {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--primary);
    color: var(--white);
    font-size: 0.85rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.hrb-principle-text strong {
    display: block;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.25rem;
}
.hrb-principle-text p {
    font-size: 0.88rem;
    color: var(--body);
    line-height: 1.65;
    margin: 0;
}
.hrb-phases {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.hrb-phase {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 2rem;
    position: relative;
}
.hrb-phase-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bg-teal);
    color: var(--primary-dark);
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 0.3rem 0.75rem;
    border-radius: 50px;
    margin-bottom: 1.25rem;
}
.hrb-phase h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.75rem;
}
.hrb-phase p {
    font-size: 0.9rem;
    color: var(--body);
    line-height: 1.7;
    margin-bottom: 1rem;
}
.hrb-phase ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}
.hrb-phase ul li {
    font-size: 0.85rem;
    color: var(--body);
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.hrb-phase ul li::before {
    content: '✓';
    color: var(--primary);
    font-weight: 700;
    flex-shrink: 0;
}
.hrb-phase-arrow {
    position: absolute;
    right: -13px;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    background: var(--primary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    color: white;
    font-size: 0.75rem;
}
.hrb-audience {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}
.hrb-audience-card {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 14px;
    padding: 1.75rem;
}
.hrb-audience-card h3 {
    font-size: 1rem;
    font-weight: 700;
    color: #e2e8f0;
    margin-bottom: 0.6rem;
}
.hrb-audience-card p {
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.7;
    margin: 0;
}
.hrb-audience-emoji {
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
    display: block;
}

/* ===== HR-SOFTWARE, Prefix: hrs- ===== */
.hrs-software-band {
    background: var(--bg-light);
    padding: 2.5rem 24px;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}
.hrs-software-inner {
    max-width: 900px;
    margin: 0 auto;
}
.hrs-software-label {
    text-align: center;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--subtle);
    margin-bottom: 1.25rem;
}
.hrs-software-chips {
    display: flex;
    gap: 0.875rem;
    justify-content: center;
    flex-wrap: wrap;
}
.hrs-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--white);
    border: 1.5px solid var(--border);
    border-radius: 50px;
    padding: 0.5rem 1.25rem;
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--text);
    transition: border-color 0.2s, box-shadow 0.2s;
}
.hrs-chip:hover {
    border-color: var(--primary);
    box-shadow: 0 2px 10px rgba(13,148,136,0.15);
}
.hrs-chip-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--primary);
    flex-shrink: 0;
}
.hrs-service-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}
.hrs-service-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 2rem;
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    transition: transform 0.2s, box-shadow 0.2s;
}
.hrs-service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.07);
}
.hrs-service-num {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.1rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(13,148,136,0.3);
}
.hrs-service-body h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
}
.hrs-service-body p {
    font-size: 0.9rem;
    color: var(--body);
    line-height: 1.7;
    margin-bottom: 0.875rem;
}
.hrs-service-body ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}
.hrs-service-body ul li {
    font-size: 0.85rem;
    color: var(--subtle);
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.hrs-service-body ul li::before {
    content: '✓';
    color: var(--primary);
    font-weight: 700;
    flex-shrink: 0;
}
.hrs-pitfalls {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.hrs-pitfall {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 1.75rem;
    border-top: 4px solid #ef4444;
}
.hrs-pitfall-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #fef2f2;
    color: #ef4444;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}
.hrs-pitfall-icon svg { width: 22px; height: 22px; }
.hrs-pitfall h3 {
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
    line-height: 1.35;
}
.hrs-pitfall p {
    font-size: 0.88rem;
    color: var(--body);
    line-height: 1.65;
    margin-bottom: 1rem;
}
.hrs-pitfall-solution {
    background: var(--bg-teal);
    border-radius: 8px;
    padding: 0.75rem 1rem;
    font-size: 0.84rem;
    color: var(--primary-dark);
    line-height: 1.6;
}
.hrs-pitfall-solution strong { display: block; font-weight: 700; margin-bottom: 0.2rem; }
.hrs-process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
    position: relative;
}
.hrs-process-grid::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, var(--primary-light), var(--primary));
    z-index: 0;
}
.hrs-step {
    text-align: center;
    position: relative;
    z-index: 1;
}
.hrs-step-num {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.1rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    box-shadow: 0 4px 14px rgba(13,148,136,0.35);
}
.hrs-step h3 {
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
}
.hrs-step p { font-size: 0.84rem; color: var(--body); line-height: 1.65; }
.hrs-step-duration {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    background: var(--bg-teal);
    color: var(--primary-dark);
    padding: 0.15rem 0.6rem;
    border-radius: 50px;
    margin-bottom: 0.5rem;
}
.hrs-compare-wrap { overflow-x: auto; margin: 2rem 0; }
.hrs-compare {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}
.hrs-compare th {
    background: var(--slate);
    color: white;
    padding: 0.875rem 1.25rem;
    text-align: left;
    font-weight: 700;
}
.hrs-compare th:first-child { border-radius: 10px 0 0 0; }
.hrs-compare th:last-child { border-radius: 0 10px 0 0; }
.hrs-compare td {
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid var(--border);
    color: var(--body);
    vertical-align: top;
}
.hrs-compare tr:nth-child(even) td { background: var(--bg-light); }
.hrs-compare .hrs-rec {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    background: var(--bg-teal);
    color: var(--primary-dark);
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.2rem 0.6rem;
    border-radius: 50px;
}
.hrs-table-note {
    font-size: 0.82rem;
    color: var(--subtle);
    text-align: center;
    margin-top: 1rem;
}

/* ===== INDEX PAGE, Prefix: hk-index- ===== */
.hk-hero {
    padding: 96px 0 80px;
    background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%);
}
.hk-index-hero-rating {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 50px;
    padding: 0.35rem 1rem;
    font-size: 0.82rem;
    color: #94a3b8;
    margin-top: 2rem;
}
.hk-index-hero-rating .hk-stars {
    color: #fbbf24;
    letter-spacing: 1px;
    font-size: 0.78rem;
}
.hk-index-hero-rating strong { color: #e2e8f0; }
.hk-index-services {
    padding: 96px 0;
    background: var(--bg-light);
}
.hk-index-why {
    padding: 96px 0;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    position: relative;
    overflow: hidden;
}
.hk-index-why::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 55% 70% at 80% 50%, rgba(255,255,255,0.06) 0%, transparent 70%);
    pointer-events: none;
}
.hk-index-why .hk-section-title { color: #fff; }
.hk-index-why .hk-section-sub   { color: rgba(255,255,255,0.78); }
.hk-index-why .hk-eyebrow {
    background: rgba(255,255,255,0.16);
    color: #ccfbf1;
    border: 1px solid rgba(255,255,255,0.22);
}
.hk-index-why-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    position: relative;
}
.hk-index-why-item {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 14px;
    padding: 1.75rem;
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    transition: background 0.2s, border-color 0.2s, transform 0.2s;
}
.hk-index-why-item:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0.42);
    transform: translateY(-2px);
}
.hk-index-why-check {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #5eead4;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--primary-dark);
}
.hk-index-why-check svg { width: 15px; height: 15px; }
.hk-index-why-item h3 {
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 0.35rem;
}
.hk-index-why-item p {
    font-size: 0.9rem;
    color: rgba(255,255,255,0.72);
    line-height: 1.65;
    margin: 0;
}
.hk-index-team {
    padding: 96px 0;
    background: var(--white);
}
.hk-index-team-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    margin-bottom: 2.5rem;
}
.hk-index-team-card {
    background: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
}
.hk-index-team-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 36px rgba(0,0,0,0.09);
}
.hk-index-team-photo {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: top center;
    display: block;
}
.hk-index-team-info {
    padding: 1.25rem 1.25rem 1.5rem;
}
.hk-index-team-info strong {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.2rem;
}
.hk-index-team-info span {
    font-size: 0.83rem;
    color: var(--subtle);
    display: block;
}
.hk-team-linkedin {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.65rem;
    padding: 0.28rem 0.7rem;
    background: #f0f9ff;
    border: 1px solid #dbeafe;
    border-radius: 50px;
    color: #0a66c2;
    font-size: 0.76rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s, border-color 0.2s;
}
.hk-team-linkedin:hover {
    background: #dbeafe;
    border-color: #93c5fd;
}
.hk-index-team-more {
    text-align: center;
}
.hk-index-team-more a {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--primary);
}
.hk-index-team-more a:hover { color: var(--primary-dark); text-decoration: underline; }
.hk-index-software {
    padding: 80px 0;
    background: var(--bg-teal);
}
.hk-index-software-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.875rem;
    justify-content: center;
    margin: 2.5rem 0;
}
.hk-index-software-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: var(--white);
    border: 1px solid #99f6e4;
    border-radius: 50px;
    padding: 0.6rem 1.25rem;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--text);
    box-shadow: 0 2px 6px rgba(13,148,136,0.07);
    transition: box-shadow 0.2s, transform 0.15s;
}
.hk-index-software-badge:hover {
    box-shadow: 0 6px 18px rgba(13,148,136,0.14);
    transform: translateY(-2px);
}
.hk-index-software-badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--primary);
    flex-shrink: 0;
}
.hk-index-software-note {
    text-align: center;
    font-size: 0.88rem;
    color: var(--subtle);
    margin-top: 1.25rem;
    font-style: italic;
}
.hk-index-partner {
    padding: 40px 0;
    background: #fff;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}
.hk-index-partner-inner {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
}
.hk-index-partner-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--bg-teal);
    border: 1px solid #99f6e4;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--primary);
}
.hk-index-partner-text { flex: 1; min-width: 240px; }
.hk-index-partner-text strong {
    display: block;
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.2rem;
}
.hk-index-partner-text p {
    font-size: 0.88rem;
    color: var(--body);
    margin: 0;
}
.hk-index-partner-text a { color: var(--primary); font-weight: 600; }

/* ===== KONTAKT PAGE, Prefix: hk-ko- ===== */
.hk-ko-hero {
    padding: 72px 0 60px;
    background: linear-gradient(135deg, var(--bg-teal), #e0f7f4);
}
.hk-ko-hero-inner {
    max-width: 720px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}
.hk-ko-breadcrumb {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    color: var(--subtle);
    margin-bottom: 1.5rem;
}
.hk-ko-breadcrumb a { color: var(--primary); text-decoration: none; }
.hk-ko-breadcrumb a:hover { text-decoration: underline; }
.hk-ko-hero h1 {
    font-size: clamp(2rem, 4.5vw, 3rem);
    font-weight: 800;
    color: var(--text);
    line-height: 1.2;
    margin-bottom: 1rem;
}
.hk-ko-hero-sub {
    font-size: 1.05rem;
    color: var(--body);
    line-height: 1.75;
    max-width: 580px;
    margin: 0 auto;
}
.hk-ko-section {
    padding: 80px 0 88px;
}
.hk-ko-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3.5rem;
    align-items: start;
    max-width: 960px;
    margin: 0 auto;
}
.hk-ko-calendly-box {
    background: linear-gradient(135deg, #0f172a, #0d4a3a);
    border-radius: 20px;
    padding: 2.5rem;
    color: #fff;
    position: relative;
    overflow: hidden;
}
.hk-ko-calendly-box::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 70% at 80% 20%, rgba(13,148,136,0.2) 0%, transparent 70%);
    pointer-events: none;
}
.hk-ko-calendly-box-inner { position: relative; }
.hk-ko-calendly-eyebrow {
    display: inline-block;
    background: rgba(13,148,136,0.3);
    border: 1px solid rgba(13,148,136,0.5);
    color: #5eead4;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.25rem 0.8rem;
    border-radius: 50px;
    margin-bottom: 1.25rem;
}
.hk-ko-calendly-box h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 0.75rem;
    line-height: 1.25;
}
.hk-ko-calendly-box p {
    font-size: 0.92rem;
    color: #94a3b8;
    line-height: 1.7;
    margin-bottom: 1.75rem;
}
.hk-ko-calendly-features {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}
.hk-ko-calendly-features li {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.88rem;
    color: #cbd5e1;
}
.hk-ko-calendly-features li svg {
    color: #5eead4;
    flex-shrink: 0;
}
.hk-ko-details h2 {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--text);
    margin-bottom: 1.5rem;
}
.hk-ko-contact-item {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 1.1rem 0;
    border-bottom: 1px solid var(--border);
}
.hk-ko-contact-item:first-of-type { border-top: 1px solid var(--border); }
.hk-ko-contact-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.hk-ko-contact-icon svg { width: 18px; height: 18px; }
.hk-ko-contact-label {
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--subtle);
    margin-bottom: 0.2rem;
}
.hk-ko-contact-value {
    font-size: 0.97rem;
    font-weight: 600;
    color: var(--text);
}
.hk-ko-contact-value a {
    color: var(--text);
    transition: color 0.15s;
}
.hk-ko-contact-value a:hover { color: var(--primary); }
.hk-ko-contact-note {
    font-size: 0.8rem;
    color: var(--subtle);
    margin-top: 0.2rem;
    display: block;
}
.hk-ko-promise {
    margin-top: 1.5rem;
    background: var(--bg-teal);
    border: 1px solid #99f6e4;
    border-radius: 12px;
    padding: 1.1rem 1.25rem;
    font-size: 0.88rem;
    color: var(--primary-dark);
    line-height: 1.65;
}
.hk-ko-faq {
    padding: 0 0 88px;
    background: var(--bg-light);
}
.hk-ko-faq-inner {
    padding-top: 72px;
}

/* ===== ÜBER UNS PAGE, Prefix: hk-uu- ===== */

/* Breadcrumb bar (above hero, light background) */
.hk-uu-breadcrumb-bar {
    background: #f8fafc;
    border-bottom: 1px solid #e5e7eb;
}
.hk-uu-breadcrumb-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}
.hk-uu-breadcrumb {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    font-size: 0.8rem;
    color: var(--subtle);
    padding: 0.75rem 0;
}
.hk-uu-breadcrumb a { color: var(--primary); text-decoration: none; }
.hk-uu-breadcrumb a:hover { text-decoration: underline; }

/* Hero – split layout */
.hk-uu-hero {
    background: var(--dark);
    background-image: radial-gradient(ellipse at 70% 50%, rgba(13,148,136,0.18) 0%, transparent 65%);
    padding: 80px 0 88px;
}
.hk-uu-hero-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}
.hk-uu-hero-eyebrow {
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--primary);
    background: rgba(13,148,136,0.15);
    border: 1px solid rgba(13,148,136,0.3);
    border-radius: 50px;
    padding: 0.3rem 0.9rem;
    margin-bottom: 1.25rem;
}
.hk-uu-hero h1 {
    font-size: clamp(2rem, 4.5vw, 3.2rem);
    font-weight: 800;
    color: #fff;
    line-height: 1.15;
    margin-bottom: 1.25rem;
}
.hk-uu-hero h1 span { color: var(--primary); }
.hk-uu-hero-sub {
    font-size: 1.05rem;
    color: rgba(255,255,255,0.75);
    line-height: 1.8;
    margin-bottom: 2rem;
    max-width: 520px;
}
.hk-uu-hero-btns {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

/* Stats card (right column) */
.hk-uu-hero-stats {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 20px;
    padding: 2.5rem 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem 1.5rem;
}
.hk-uu-hero-stat-num {
    font-size: 2.1rem;
    font-weight: 800;
    color: #fff;
    line-height: 1;
    margin-bottom: 0.4rem;
}
.hk-uu-hero-stat-label {
    font-size: 0.85rem;
    color: rgba(255,255,255,0.6);
    line-height: 1.4;
}
.hk-uu-ansatz {
    padding: 88px 0;
}
.hk-uu-ansatz-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    align-items: start;
}
.hk-uu-ansatz-left h2 {
    font-size: clamp(1.6rem, 3vw, 2.1rem);
    font-weight: 800;
    color: var(--text);
    line-height: 1.25;
    margin-bottom: 1.5rem;
}
.hk-uu-ansatz-left p {
    color: var(--body);
    line-height: 1.8;
    margin-bottom: 1.1rem;
}
.hk-uu-ansatz-right {
    background: var(--bg-teal);
    border: 1px solid #99f6e4;
    border-radius: 16px;
    padding: 2rem;
}
.hk-uu-ansatz-right h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--primary-dark);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 1.25rem;
}
.hk-uu-fact {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.9rem 0;
    border-bottom: 1px solid rgba(13,148,136,0.15);
}
.hk-uu-fact:last-child { border-bottom: none; }
.hk-uu-fact-value {
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--primary);
    line-height: 1;
    min-width: 60px;
}
.hk-uu-fact-label {
    font-size: 0.88rem;
    color: var(--body);
    line-height: 1.4;
}
.hk-uu-team {
    padding: 88px 0;
    background: var(--bg-light);
}
.hk-uu-team-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5rem;
}
.hk-uu-team-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    transition: transform 0.2s, box-shadow 0.2s;
}
.hk-uu-team-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}
.hk-uu-team-photo {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: top center;
    display: block;
}
.hk-uu-team-body {
    padding: 1.25rem 1.5rem 1.5rem;
}
.hk-uu-team-card h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.25rem;
}
.hk-uu-team-role {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--primary);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 0.85rem;
}
.hk-uu-team-card p {
    font-size: 0.875rem;
    color: var(--body);
    line-height: 1.65;
    margin: 0;
}
.hk-uu-lohnklar {
    padding: 72px 0;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    text-align: center;
    position: relative;
    overflow: hidden;
}
.hk-uu-lohnklar::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(255,255,255,0.07) 0%, transparent 70%);
    pointer-events: none;
}
.hk-uu-lohnklar-inner {
    max-width: 680px;
    margin: 0 auto;
    padding: 0 24px;
    position: relative;
}
.hk-uu-lohnklar .hk-eyebrow {
    background: rgba(255,255,255,0.70);
    color: #ccfbf1;
    margin-bottom: 1.25rem;
}
.hk-uu-lohnklar h2 {
    font-size: clamp(1.6rem, 3vw, 2.25rem);
    font-weight: 800;
    color: #fff;
    margin-bottom: 1rem;
    line-height: 1.25;
}
.hk-uu-lohnklar p {
    font-size: 1rem;
    color: rgba(255,255,255,0.78);
    line-height: 1.75;
    margin-bottom: 2rem;
}
.hk-uu-lohnklar p a { color: #ccfbf1; font-weight: 600; }
.hk-uu-lohnklar p a:hover { color: #fff; }

/* ===== DATENSCHUTZ, Prefix: dse- ===== */
.dse-hero {
    background: linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%);
    padding: 3.5rem 1.5rem 3rem;
    text-align: center;
}
.dse-hero h1 {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.75rem;
}
.dse-hero p {
    color: #4b5563;
    font-size: 1.05rem;
    max-width: 580px;
    margin: 0 auto;
    line-height: 1.65;
}
.dse-wrap {
    max-width: 860px;
    margin: 0 auto;
    padding: 3rem 1.5rem 5rem;
}
.dse-toc {
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    padding: 1.5rem 1.75rem;
    margin-bottom: 2.5rem;
}
.dse-toc h2 {
    font-size: 1rem;
    font-weight: 700;
    color: #0f766e;
    margin-bottom: 0.75rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
.dse-toc ol {
    margin: 0;
    padding-left: 1.25rem;
    column-count: 2;
    column-gap: 2rem;
    color: #4b5563;
    font-size: 0.9rem;
    line-height: 1.8;
}
.dse-toc li { margin-bottom: 0.15rem; }
.dse-toc a { color: #0d9488; text-decoration: none; }
.dse-toc a:hover { text-decoration: underline; }
.dse-section { margin-bottom: 2.75rem; }
.dse-section h2 {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.75rem;
    padding-bottom: 0.4rem;
    border-bottom: 2px solid #f0fdfa;
}
.dse-section h3 {
    font-size: 1rem;
    font-weight: 700;
    color: #1f2937;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}
.dse-section p {
    font-size: 1rem;
    line-height: 1.75;
    color: #4b5563;
    margin-bottom: 0.75rem;
}
.dse-section ul, .dse-section ol {
    margin: 0.5rem 0 1rem 1.25rem;
    color: #4b5563;
    line-height: 1.75;
    font-size: 1rem;
}
.dse-section li { margin-bottom: 0.3rem; }
.dse-widerspruch {
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    padding: 1.5rem 1.75rem;
}
.dse-widerspruch p { margin-bottom: 0; font-size: 0.95rem; }
.dse-info {
    background: #f0fdfa;
    border-left: 4px solid #0d9488;
    border-radius: 0 8px 8px 0;
    padding: 1rem 1.25rem;
    margin-top: 0.75rem;
}
.dse-info p { margin-bottom: 0; font-size: 0.95rem; }
.dse-section a { color: #0d9488; text-decoration: underline; }
.dse-section a:hover { color: #0f766e; }
.dse-stand { font-size: 0.875rem; color: #9ca3af; margin-top: 1rem; }

/* ===== IMPRESSUM, Prefix: hk-legal- ===== */
.hk-legal {
    max-width: 800px;
    margin: 0 auto;
    padding: 4rem 1.5rem 5rem;
}
.hk-legal h1 {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 2rem;
}
.hk-legal h2 {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1f2937;
    margin-top: 2.5rem;
    margin-bottom: 0.75rem;
    padding-bottom: 0.4rem;
    border-bottom: 2px solid #f0fdfa;
}
.hk-legal p, .hk-legal address {
    font-size: 1rem;
    line-height: 1.75;
    color: #4b5563;
    font-style: normal;
    margin-bottom: 0.5rem;
}
.hk-legal a { color: #0d9488; text-decoration: underline; }
.hk-legal a:hover { color: #0f766e; }
.hk-notice-box {
    background: #f0fdfa;
    border-left: 4px solid #0d9488;
    border-radius: 0 8px 8px 0;
    padding: 1rem 1.25rem;
    margin: 1.5rem 0;
    color: #134e4a;
    font-size: 0.95rem;
    line-height: 1.65;
}

/* ===== BLOG INDEX, Prefix: hk-blog- ===== */
.hk-blog-hero {
    padding: 64px 0 56px;
    background: linear-gradient(135deg, #f0fdfa 0%, #e0f7f4 100%);
    text-align: center;
}
.hk-blog-hero h1 {
    font-size: clamp(2rem, 4.5vw, 3rem);
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 0.75rem;
    line-height: 1.15;
}
.hk-blog-hero p {
    font-size: 1.1rem;
    color: #4b5563;
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.7;
}
.hk-blog-filter {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: center;
    padding: 2.5rem 24px 0;
}
.hk-blog-filter-btn {
    display: inline-block;
    padding: 0.45rem 1.1rem;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    border: 2px solid transparent;
    background: #f1f5f9;
    color: #4b5563;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    user-select: none;
}
.hk-blog-filter-btn:hover,
.hk-blog-filter-btn.active {
    background: #0d9488;
    color: #fff;
    border-color: #0d9488;
}
.hk-blog-filter-btn[data-cat="Alle"].active {
    background: #0f172a;
    border-color: #0f172a;
}
.hk-blog-cat--hr-strategie   { background: #ccfbf1; color: #134e4a; }
.hk-blog-cat--fuehrung        { background: #dbeafe; color: #1d4ed8; }
.hk-blog-cat--recruiting      { background: #d1fae5; color: #065f46; }
.hk-blog-cat--arbeitsrecht    { background: #fef3c7; color: #92400e; }
.hk-blog-cat--tools           { background: #ede9fe; color: #5b21b6; }
.hk-blog-section { padding: 3rem 0 80px; }
.hk-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
.hk-blog-card[hidden] { display: none !important; }
.hk-blog-card-meta-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.6rem;
}
.hk-blog-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3rem 0;
    color: #6b7280;
    font-size: 1rem;
    display: none;
}

/* ===== INTERIM HR BERLIN, Prefix: ihb- ===== */
.ihb-hero-visual {
    display: flex;
    align-items: center;
    justify-content: center;
}
.ihb-skyline {
    width: 100%;
    max-width: 420px;
}
.ihb-districts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-top: 2rem;
}
.ihb-district-card {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 12px;
    padding: 1.25rem;
    transition: background 0.2s;
}
.ihb-district-card:hover { background: rgba(255,255,255,0.70); }
.ihb-district-name {
    font-size: 0.9rem;
    font-weight: 700;
    color: #5eead4;
    margin-bottom: 0.3rem;
}
.ihb-district-desc {
    font-size: 0.82rem;
    color: #94a3b8;
    line-height: 1.55;
}
.ihb-cases-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}
.ihb-case-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 1.75rem;
    transition: transform 0.2s, box-shadow 0.2s;
}
.ihb-case-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(0,0,0,0.07);
}
.ihb-case-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}
.ihb-case-icon svg { width: 22px; height: 22px; }
.ihb-case-card h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
    line-height: 1.35;
}
.ihb-case-card p {
    font-size: 0.87rem;
    color: var(--body);
    line-height: 1.65;
    margin: 0;
}
.ihb-why-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: center;
}
.ihb-why-text h2 {
    font-size: 1.85rem;
    font-weight: 800;
    color: var(--text);
    line-height: 1.25;
    margin-bottom: 1rem;
}
.ihb-why-text p {
    font-size: 0.97rem;
    color: var(--body);
    line-height: 1.8;
    margin-bottom: 1rem;
}
.ihb-stats-box {
    background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%);
    border-radius: 20px;
    padding: 2.5rem;
}
.ihb-stats-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}
.ihb-stat-item { text-align: center; }
.ihb-stat-val {
    font-size: 2.25rem;
    font-weight: 800;
    color: #5eead4;
    line-height: 1;
    margin-bottom: 0.4rem;
}
.ihb-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihb-process {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}
.ihb-process-step {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 1.75rem 1.5rem;
    position: relative;
}
.ihb-process-num {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.1rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    box-shadow: 0 4px 14px rgba(13,148,136,0.3);
}
.ihb-process-step h3 {
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
}
.ihb-process-step p {
    font-size: 0.85rem;
    color: var(--body);
    line-height: 1.65;
    margin: 0;
}
.ihb-process-step .ihb-duration {
    display: inline-block;
    margin-top: 0.75rem;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--primary);
    background: var(--bg-teal);
    padding: 0.2rem 0.6rem;
    border-radius: 20px;
}

/* ===== EXTERNE HR-ABTEILUNG, Prefix: eha- ===== */
.eha-compare {
    width: 100%;
    border-collapse: collapse;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,0.06);
}
.eha-compare th,
.eha-compare td {
    padding: 1rem 1.25rem;
    text-align: left;
    border-bottom: 1px solid var(--border);
    font-size: 0.93rem;
}
.eha-compare thead th {
    background: var(--text);
    color: var(--white);
    font-weight: 700;
    font-size: 0.88rem;
}
.eha-compare thead th:first-child { background: #1e293b; }
.eha-compare thead th.eha-col-highlight { background: var(--primary); }
.eha-compare tbody tr:last-child td { border-bottom: none; }
.eha-compare tbody tr:nth-child(even) td { background: var(--bg-light); }
.eha-compare .eha-check { color: var(--primary); font-weight: 700; font-size: 1.1rem; }
.eha-compare .eha-cross { color: #ef4444; font-weight: 700; font-size: 1.1rem; }
.eha-compare .eha-neutral { color: #f59e0b; font-weight: 700; font-size: 1.1rem; }
.eha-compare td.eha-col-highlight {
    background: #f0fdfa !important;
    font-weight: 600;
    color: var(--primary-dark);
}
.eha-compare .eha-row-label { font-weight: 600; color: var(--text); }
.eha-services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}
.eha-service-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 1.75rem;
    transition: transform 0.2s, box-shadow 0.2s;
}
.eha-service-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(0,0,0,0.07);
}
.eha-service-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.1rem;
}
.eha-service-icon svg { width: 24px; height: 24px; }
.eha-service-card h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
    line-height: 1.35;
}
.eha-service-card p {
    font-size: 0.87rem;
    color: var(--body);
    line-height: 1.7;
    margin: 0;
}
.eha-when-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: start;
}
.eha-when-col h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--primary);
    display: inline-block;
}
.eha-when-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.eha-when-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border);
    font-size: 0.93rem;
    color: var(--body);
    line-height: 1.6;
}
.eha-when-list li:last-child { border-bottom: none; }
.eha-when-icon {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 1px;
}
.eha-when-icon--yes { background: var(--bg-teal); color: var(--primary); }
.eha-when-icon--no { background: #fef2f2; color: #ef4444; }
.eha-when-icon svg { width: 12px; height: 12px; }
.eha-when-note {
    font-size: 0.87rem;
    color: var(--subtle);
    margin-top: 1rem;
    font-style: italic;
}
.eha-hero-visual {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.eha-org-chart {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 20px;
    padding: 2rem;
    width: 100%;
    max-width: 380px;
}
.eha-org-title {
    font-size: 0.78rem;
    font-weight: 600;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 1.5rem;
    text-align: center;
}
.eha-org-level {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}
.eha-org-level--sm { gap: 0.5rem; }
.eha-org-box {
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 10px;
    padding: 0.75rem 1rem;
    text-align: center;
    min-width: 90px;
}
.eha-org-box.eha-org-highlight {
    background: rgba(13,148,136,0.25);
    border-color: #0d9488;
}
.eha-org-role { font-size: 0.72rem; color: #94a3b8; margin-bottom: 0.25rem; }
.eha-org-name { font-size: 0.85rem; font-weight: 700; color: var(--white); }
.eha-org-name.eha-teal { color: #5eead4; }
.eha-org-connector { display: flex; justify-content: center; margin: 0.1rem 0; }
.eha-org-connector svg { color: rgba(255,255,255,0.70); }
.eha-cost-box {
    background: rgba(13,148,136,0.15);
    border: 1px solid rgba(13,148,136,0.3);
    border-radius: 12px;
    padding: 1rem;
    margin-top: 1.25rem;
    text-align: center;
}
.eha-cost-label { font-size: 0.75rem; color: #94a3b8; margin-bottom: 0.4rem; }
.eha-cost-val { font-size: 1.05rem; font-weight: 700; color: #5eead4; }
.eha-process {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    position: relative;
}
.eha-process::before {
    content: '';
    position: absolute;
    top: 27px;
    left: 12.5%;
    right: 12.5%;
    height: 2px;
    background: linear-gradient(90deg, var(--primary-light), var(--primary));
}
.eha-process-step { text-align: center; padding: 0 1rem; position: relative; }
.eha-process-num {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.15rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.25rem;
    box-shadow: 0 4px 16px rgba(13,148,136,0.35);
    position: relative;
    z-index: 1;
}
.eha-process-step h3 {
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.6rem;
}
.eha-process-step p { font-size: 0.84rem; color: var(--body); line-height: 1.7; }

/* ===== ELTERNZEITVERTRETUNG HR, Prefix: ezv- ===== */
.ezv-timeline {
    position: relative;
    padding-left: 2.5rem;
}
.ezv-timeline::before {
    content: '';
    position: absolute;
    left: 10px;
    top: 8px;
    bottom: 8px;
    width: 3px;
    background: linear-gradient(180deg, var(--primary-light), var(--primary));
    border-radius: 2px;
}
.ezv-timeline-item {
    position: relative;
    padding: 0 0 2rem 1.5rem;
}
.ezv-timeline-item:last-child { padding-bottom: 0; }
.ezv-timeline-dot {
    position: absolute;
    left: -2.5rem;
    top: 3px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    border: 3px solid var(--white);
    box-shadow: 0 0 0 2px var(--primary-light);
}
.ezv-timeline-phase {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--primary);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 0.3rem;
}
.ezv-timeline-title {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
    line-height: 1.35;
}
.ezv-timeline-desc {
    font-size: 0.9rem;
    color: var(--body);
    line-height: 1.7;
    margin: 0;
}
.ezv-timeline-tag {
    display: inline-block;
    margin-top: 0.5rem;
    font-size: 0.76rem;
    font-weight: 600;
    color: var(--primary);
    background: var(--bg-teal);
    padding: 0.2rem 0.65rem;
    border-radius: 20px;
}
.ezv-tasks-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.875rem 2.5rem;
}
.ezv-task-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border);
}
.ezv-task-item:nth-last-child(-n+2) { border-bottom: none; }
.ezv-task-check {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
}
.ezv-task-check svg { width: 12px; height: 12px; }
.ezv-task-item span { font-size: 0.93rem; color: var(--body); line-height: 1.6; }
.ezv-worry-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}
.ezv-worry-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 1.75rem;
    position: relative;
    overflow: hidden;
}
.ezv-worry-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--primary), var(--primary-light));
}
.ezv-worry-icon { font-size: 1.75rem; margin-bottom: 0.75rem; line-height: 1; }
.ezv-worry-card h3 {
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 0.5rem;
    line-height: 1.35;
}
.ezv-worry-card p { font-size: 0.87rem; color: var(--body); line-height: 1.7; margin: 0; }
.ezv-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: start;
}
.ezv-hero-visual {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.ezv-calendar-card {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 16px;
    padding: 1.5rem;
}
.ezv-calendar-header {
    font-size: 0.75rem;
    font-weight: 600;
    color: #5eead4;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 1rem;
}
.ezv-calendar-subtitle {
    font-size: 0.76rem;
    color: #64748b;
    margin-bottom: 0.75rem;
}
.ezv-calendar-row {
    display: flex;
    justify-content: space-between;
    gap: 0.4rem;
    margin-bottom: 0.4rem;
}
.ezv-cal-day {
    flex: 1;
    height: 32px;
    border-radius: 6px;
    background: rgba(255,255,255,0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.78rem;
    color: #94a3b8;
}
.ezv-cal-day.ezv-cal-highlight { background: rgba(13,148,136,0.35); color: #5eead4; font-weight: 600; }
.ezv-cal-day.ezv-cal-muted { opacity: 0.4; }
.ezv-calendar-confirm {
    font-size: 0.75rem;
    color: #5eead4;
    margin: 0.6rem 0 0;
    font-weight: 600;
}
.ezv-transfer-badge {
    background: rgba(13,148,136,0.2);
    border: 1px solid rgba(13,148,136,0.4);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}
.ezv-transfer-badge--muted {
    background: rgba(255,255,255,0.05);
}
.ezv-transfer-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(13,148,136,0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ezv-transfer-icon svg { width: 20px; height: 20px; color: #5eead4; }
.ezv-transfer-icon--muted { background: rgba(255,255,255,0.70); }
.ezv-transfer-icon--muted svg { color: #94a3b8; }
.ezv-transfer-text { font-size: 0.87rem; color: #e2e8f0; line-height: 1.55; }
.ezv-transfer-text strong { color: #5eead4; }
.ezv-transfer-text--muted { color: #94a3b8; }
.ezv-transfer-laufzeit { color: #e2e8f0; }
.ezv-when-box {
    background: var(--bg-teal);
    border-radius: 16px;
    padding: 2rem;
    position: sticky;
    top: 120px;
}
.ezv-when-box-title {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--primary);
    text-transform: uppercase;
    letter-spacing: 0.07em;
    margin-bottom: 1rem;
}
.ezv-when-box-body {
    font-size: 0.93rem;
    color: var(--body);
    line-height: 1.75;
    margin-bottom: 1.25rem;
}
.ezv-when-box-p { margin: 0 0 0.75rem; }
.ezv-when-box-p:last-child { margin-bottom: 0; }

/* ===== PAGE-SPECIFIC MEDIA QUERIES ===== */
@media (max-width: 1024px) {
    .ihr-cases-grid { grid-template-columns: 1fr; }
    .ihr-tasks-grid { grid-template-columns: 1fr; }
    .ihr-intro-band-inner { grid-template-columns: 1fr; gap: 1.5rem; }
    .ihr-process { grid-template-columns: 1fr; }
    .ihr-process::before { display: none; }
    .ihr-stats-row { grid-template-columns: 1fr; }
    .hrb-fields-grid { grid-template-columns: 1fr 1fr; }
    .hrb-phases { grid-template-columns: 1fr; }
    .hrb-phase-arrow { display: none; }
    .hrs-process-grid { grid-template-columns: repeat(2, 1fr); }
    .hrs-process-grid::before { display: none; }
    .hrs-pitfalls { grid-template-columns: 1fr; }
    .ihb-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .ihb-process { grid-template-columns: repeat(2, 1fr); }
    .eha-services-grid { grid-template-columns: repeat(2, 1fr); }
    .eha-process { grid-template-columns: repeat(2, 1fr); gap: 2rem; }
    .eha-process::before { display: none; }
    .ezv-worry-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
    .hk-uu-team-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
    .ihr-cases-grid { grid-template-columns: 1fr; }
    .hrb-fields-grid { grid-template-columns: 1fr; }
    .hrb-approach { grid-template-columns: 1fr; gap: 2rem; }
    .hrb-audience { grid-template-columns: 1fr; }
    .hrs-service-grid { grid-template-columns: 1fr; }
    .hrs-service-card { flex-direction: column; gap: 1rem; }
    .hrs-process-grid { grid-template-columns: 1fr; }
    .hk-index-why-grid { grid-template-columns: 1fr; }
    .hk-index-team-grid { grid-template-columns: repeat(2, 1fr); }
    .hk-index-services,
    .hk-index-why,
    .hk-index-team,
    .hk-index-software { padding: 64px 0; }
    .hk-ko-grid { grid-template-columns: 1fr; gap: 2.5rem; }
    .hk-uu-ansatz-grid { grid-template-columns: 1fr; gap: 2.5rem; }
    .hk-uu-team-grid { grid-template-columns: 1fr; }
    .hk-blog-grid { grid-template-columns: repeat(2, 1fr); }
    .ihb-cases-grid { grid-template-columns: 1fr; }
    .ihb-districts { grid-template-columns: 1fr; }
    .ihb-why-grid { grid-template-columns: 1fr; }
    .ihb-process { grid-template-columns: 1fr; }
    .ihb-stats-row { grid-template-columns: 1fr 1fr; }
    .eha-services-grid { grid-template-columns: 1fr; }
    .eha-when-grid { grid-template-columns: 1fr; }
    .eha-process { grid-template-columns: 1fr; }
    .eha-compare { font-size: 0.82rem; }
    .eha-compare th, .eha-compare td { padding: 0.75rem; }
    .eha-hero-visual { display: none; }
    .ezv-split { grid-template-columns: 1fr; }
    .ezv-tasks-grid { grid-template-columns: 1fr; }
    .ezv-worry-grid { grid-template-columns: 1fr; }
    .ezv-hero-visual { display: none; }
}
@media (max-width: 480px) {
    .hk-index-team-grid { grid-template-columns: 1fr; }
    .hk-index-partner-inner { flex-direction: column; text-align: center; }
    .hk-uu-team-grid { grid-template-columns: 1fr; }
    .hk-blog-grid { grid-template-columns: 1fr; }
    .hk-blog-filter { gap: 0.4rem; }
    .dse-toc ol { column-count: 1; }
}

/* ===== BLOG ARTICLE COMPONENTS ===== */
.ba-author-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.1rem;
    flex-shrink: 0;
}
.ba-author-photo {
    display: block;
    width: 64px;
    height: 64px;
    min-width: 64px;
    border-radius: 50%;
    object-fit: cover;
    object-position: top center;
    flex-shrink: 0;
    border: 2px solid #e2e8f0;
    overflow: hidden;
}
.hk-blog-empty { display: none; }

/* ===== UTILITY: Light hero (hk-hero--light), outline blue button ===== */
.hk-hero--light {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}
.hk-hero--light .hk-hero-content h1,
.hk-hero--light .shr-hero-h1,
.hk-hero--light .ivf-hero-h1,
.hk-hero--light .pe-hero-h1 {
    color: #1f2937;
}
.hk-hero--light .hk-hero-sub,
.hk-hero--light .ivf-hero-sub,
.hk-hero--light .pe-hero-sub,
.hk-hero--light .shr-hero-sub {
    color: #4b5563;
}
.hk-breadcrumb--light .hk-breadcrumb-inner a { color: #2563eb; }
.hk-breadcrumb--light .hk-breadcrumb-inner { color: #6b7280; }
.hk-trust-item.pe-trust-item,
.hk-trust-item.shr-trust-item {
    color: #4b5563;
}
.btn.btn-outline-blue {
    background: transparent;
    border: 2px solid #2563eb;
    color: #2563eb;
    border-radius: 50px;
    padding: 0.75rem 1.75rem;
    font-weight: 600;
    display: inline-block;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}
.btn.btn-outline-blue:hover { background: #2563eb; color: #fff; }
.btn.btn-outline-blue.btn-large { padding: 1rem 2rem; font-size: 1.05rem; }

/* ===== INTERIM HR HAMBURG (ihh-) ===== */
.ihh-hero-visual {
    display: flex;
    align-items: center;
    justify-content: center;
}
.ihh-skyline {
    width: 100%;
    max-width: 420px;
}
.ihh-districts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-top: 2rem;
}
.ihh-district-card {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.70);
    border-radius: 12px;
    padding: 1.25rem;
    transition: background 0.2s;
}
.ihh-district-card:hover { background: rgba(255,255,255,0.70); }
.ihh-district-name {
    font-size: 0.9rem;
    font-weight: 700;
    color: #5eead4;
    margin-bottom: 0.3rem;
}
.ihh-district-desc {
    font-size: 0.82rem;
    color: #94a3b8;
    line-height: 1.55;
}
.ihh-cases-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}
.ihh-case-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 1.75rem;
    transition: transform 0.2s, box-shadow 0.2s;
}
.ihh-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihh-case-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--bg-teal);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}
.ihh-case-icon svg { width: 22px; height: 22px; }
.ihh-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihh-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihh-why-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: center;
}
.ihh-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihh-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihh-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihh-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihh-stat-item { text-align: center; }
.ihh-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihh-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihh-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihh-process-step {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 1.75rem 1.5rem;
    position: relative;
}
.ihh-process-num {
    width: 44px; height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--primary-dark));
    color: var(--white);
    font-size: 1.1rem; font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 1rem;
    box-shadow: 0 4px 14px rgba(13,148,136,0.3);
}
.ihh-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihh-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihh-process-step .ihh-duration {
    display: inline-block; margin-top: 0.75rem;
    font-size: 0.78rem; font-weight: 600; color: var(--primary);
    background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px;
}

/* ===== INTERIM HR MÜNCHEN (ihm-) ===== */
.ihm-hero-visual { display: flex; align-items: center; justify-content: center; }
.ihm-skyline { width: 100%; max-width: 420px; }
.ihm-districts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2rem; }
.ihm-district-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.70); border-radius: 12px; padding: 1.25rem; transition: background 0.2s; }
.ihm-district-card:hover { background: rgba(255,255,255,0.70); }
.ihm-district-name { font-size: 0.9rem; font-weight: 700; color: #5eead4; margin-bottom: 0.3rem; }
.ihm-district-desc { font-size: 0.82rem; color: #94a3b8; line-height: 1.55; }
.ihm-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ihm-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.ihm-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihm-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.ihm-case-icon svg { width: 22px; height: 22px; }
.ihm-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihm-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihm-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ihm-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihm-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihm-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihm-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihm-stat-item { text-align: center; }
.ihm-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihm-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihm-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihm-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; position: relative; }
.ihm-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ihm-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihm-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihm-process-step .ihm-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== HR-MANAGER AUF ZEIT (hmz-) ===== */
.hmz-hero-visual { display: flex; align-items: center; justify-content: center; }
.hmz-hero-svg { width: 100%; max-width: 380px; }
.hmz-explainer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.hmz-explainer-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; }
.hmz-explainer-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--teal); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.hmz-explainer-icon svg { width: 22px; height: 22px; }
.hmz-explainer-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.hmz-explainer-card p { font-size: 0.9rem; color: var(--body); line-height: 1.7; margin: 0; }
.hmz-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.hmz-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.hmz-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.hmz-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.hmz-case-icon svg { width: 22px; height: 22px; }
.hmz-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.hmz-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.hmz-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.hmz-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; }
.hmz-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.hmz-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.hmz-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.hmz-process-step .hmz-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }
.hmz-compare-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.hmz-compare-col { border-radius: 16px; overflow: hidden; border: 1px solid var(--border); }
.hmz-compare-col--us { border-color: #0d9488; }
.hmz-compare-col--them { border-color: var(--border); }
.hmz-compare-header { padding: 1.5rem 1.75rem 1rem; background: var(--bg-teal); }
.hmz-compare-col--them .hmz-compare-header { background: var(--bg-light); }
.hmz-compare-badge { display: inline-block; background: var(--teal); color: #fff; font-size: 0.75rem; font-weight: 700; padding: 0.2rem 0.7rem; border-radius: 20px; margin-bottom: 0.5rem; }
.hmz-compare-header h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin: 0; }
.hmz-compare-list { list-style: none; padding: 1.25rem 1.75rem; margin: 0; }
.hmz-compare-list li { font-size: 0.88rem; color: var(--body); padding: 0.45rem 0; border-bottom: 1px solid var(--border); line-height: 1.5; }
.hmz-compare-list li:last-child { border-bottom: none; }
.hmz-compare-col--us .hmz-compare-list li::before { content: "✓ "; color: var(--teal); font-weight: 700; }

/* ===== HR-BERATUNG BERLIN (hrbb-) ===== */
.hrbb-hero-visual { display: flex; align-items: center; justify-content: center; }
.hrbb-hero-svg { width: 100%; max-width: 360px; }
.hrbb-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: start; }
.hrbb-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.hrbb-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.hrbb-berlin-facts { display: flex; flex-direction: column; gap: 1rem; }
.hrbb-fact-card { background: var(--white); border: 1px solid var(--border); border-radius: 12px; padding: 1.25rem; display: flex; gap: 1rem; align-items: flex-start; }
.hrbb-fact-icon { width: 40px; height: 40px; border-radius: 10px; background: var(--bg-teal); color: var(--teal); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.hrbb-fact-icon svg { width: 20px; height: 20px; }
.hrbb-fact-card strong { display: block; font-size: 0.9rem; font-weight: 700; color: var(--text); margin-bottom: 0.25rem; }
.hrbb-fact-card p { font-size: 0.83rem; color: var(--body); line-height: 1.6; margin: 0; }
.hrbb-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.hrbb-service-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.hrbb-service-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.hrbb-service-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.hrbb-service-icon svg { width: 22px; height: 22px; }
.hrbb-service-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.hrbb-service-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.hrbb-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.hrbb-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; }
.hrbb-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.hrbb-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.hrbb-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.hrbb-process-step .hrbb-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== INTERIM HR VS. FESTANSTELLUNG (ivf-) ===== */
.ivf-hero-visual { display: flex; align-items: center; justify-content: center; }
.ivf-hero-svg { width: 100%; max-width: 360px; }
.ivf-hero-h1 { color: #1f2937; }
.ivf-hero-sub { color: #4b5563; }
.ivf-table-wrap { overflow-x: auto; border-radius: 14px; box-shadow: 0 2px 16px rgba(0,0,0,0.06); }
.ivf-compare-table { width: 100%; border-collapse: collapse; background: var(--white); }
.ivf-compare-table thead tr { background: var(--text); }
.ivf-th-label { background: #1e293b !important; color: #fff; padding: 1rem 1.25rem; text-align: left; font-size: 0.88rem; font-weight: 700; }
.ivf-th-interim { background: #0d9488 !important; color: #fff; padding: 1rem 1.25rem; text-align: left; font-size: 0.88rem; font-weight: 700; }
.ivf-th-fest { background: var(--text) !important; color: #fff; padding: 1rem 1.25rem; text-align: left; font-size: 0.88rem; font-weight: 700; }
.ivf-compare-table td { padding: 0.9rem 1.25rem; border-bottom: 1px solid var(--border); font-size: 0.93rem; color: var(--body); }
.ivf-compare-table tbody tr:last-child td { border-bottom: none; }
.ivf-compare-table tbody tr:nth-child(even) td { background: var(--bg-light); }
.ivf-td-label { font-weight: 600; color: var(--text) !important; }
.ivf-td-interim { background: #f0fdfa !important; }
.ivf-good { color: #0d9488; font-weight: 600; }
.ivf-decision-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.ivf-decision-col { border-radius: 16px; padding: 2rem; }
.ivf-decision-col--interim { background: #f0fdfa; border: 1px solid #0d9488; }
.ivf-decision-col--fest { background: #eff6ff; border: 1px solid #2563eb; }
.ivf-decision-col h3 { font-size: 1.1rem; font-weight: 700; color: var(--text); margin-bottom: 1.25rem; }
.ivf-decision-item { display: flex; gap: 1rem; margin-bottom: 1.25rem; align-items: flex-start; }
.ivf-check { font-size: 1.1rem; color: #0d9488; font-weight: 700; flex-shrink: 0; margin-top: 0.1rem; }
.ivf-arrow { font-size: 1.1rem; color: #2563eb; font-weight: 700; flex-shrink: 0; margin-top: 0.1rem; }
.ivf-decision-item strong { display: block; font-size: 0.92rem; font-weight: 700; color: var(--text); margin-bottom: 0.25rem; }
.ivf-decision-item p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ivf-scenarios { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.ivf-scenario-card { background: var(--white); border-radius: 16px; padding: 1.75rem; border: 1px solid var(--border); }
.ivf-scenario--interim { border-color: #0d9488; }
.ivf-scenario--mixed { border-color: #2563eb; }
.ivf-scenario--fest { border-color: var(--border); }
.ivf-scenario-label { font-size: 0.78rem; font-weight: 700; color: #0d9488; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.75rem; }
.ivf-scenario--mixed .ivf-scenario-label { color: #2563eb; }
.ivf-scenario--fest .ivf-scenario-label { color: var(--subtle); }
.ivf-scenario-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ivf-scenario-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin-bottom: 0.5rem; }
.ivf-scenario-card p:last-child { margin-bottom: 0; }

/* ===== PERSONIO EINFÜHRUNG (pe-) ===== */
.pe-hero-visual { display: flex; align-items: center; justify-content: center; }
.pe-hero-svg { width: 100%; max-width: 380px; }
.pe-hero-h1 { color: #1f2937; }
.pe-hero-sub { color: #4b5563; }
.pe-problems-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.pe-problem-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; }
.pe-problem-icon { width: 44px; height: 44px; border-radius: 10px; background: #fef3c7; color: #92400e; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.pe-problem-icon svg { width: 22px; height: 22px; }
.pe-problem-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.pe-problem-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.pe-packages-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }
.pe-package-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.pe-package-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.pe-package-num { font-size: 2rem; font-weight: 800; color: #dbeafe; line-height: 1; margin-bottom: 0.75rem; }
.pe-package-card h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.pe-package-card p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin-bottom: 1rem; }
.pe-package-list { list-style: none; padding: 0; margin: 0; }
.pe-package-list li { font-size: 0.82rem; color: var(--body); padding: 0.3rem 0; padding-left: 1.25rem; position: relative; }
.pe-package-list li::before { content: "✓"; position: absolute; left: 0; color: var(--teal); font-weight: 700; }
.pe-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.pe-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; }
.pe-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.pe-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.pe-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.pe-process-step .pe-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }
.pe-scope-table-wrap { overflow-x: auto; border-radius: 14px; box-shadow: 0 2px 16px rgba(0,0,0,0.06); }
.pe-scope-table { width: 100%; border-collapse: collapse; background: var(--white); }
.pe-scope-table th { padding: 1rem 1.25rem; background: var(--text); color: #fff; text-align: left; font-size: 0.88rem; font-weight: 700; border-bottom: 1px solid var(--border); }
.pe-scope-table th.pe-col-us { background: #0d9488; }
.pe-scope-table td { padding: 0.9rem 1.25rem; border-bottom: 1px solid var(--border); font-size: 0.93rem; color: var(--body); }
.pe-scope-table tbody tr:last-child td { border-bottom: none; }
.pe-scope-table tbody tr:nth-child(even) td { background: var(--bg-light); }
.pe-scope-table td.pe-col-us { background: #f0fdfa !important; font-weight: 600; color: #0f766e; }
.pe-check { color: #0d9488; font-weight: 700; font-size: 1rem; }
.pe-neutral { color: #9ca3af; font-weight: 700; }

/* ===== HR-AUDIT (ha-) ===== */
.ha-hero-visual { display: flex; align-items: center; justify-content: center; }
.ha-hero-svg { width: 100%; max-width: 360px; }
.ha-intro-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ha-intro-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ha-intro-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ha-intro-stats { display: flex; flex-direction: column; gap: 1.25rem; }
.ha-intro-stat { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 14px; padding: 1.5rem 2rem; display: flex; align-items: center; gap: 1.5rem; }
.ha-intro-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; flex-shrink: 0; }
.ha-intro-stat-lbl { font-size: 0.88rem; color: #94a3b8; line-height: 1.45; }
.ha-audit-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1rem; }
.ha-audit-card { background: var(--white); border: 1px solid var(--border); border-radius: 12px; padding: 1.25rem; transition: transform 0.2s, box-shadow 0.2s; }
.ha-audit-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,0.07); }
.ha-audit-num { font-size: 1.75rem; font-weight: 800; color: #dbeafe; line-height: 1; margin-bottom: 0.5rem; }
.ha-audit-card h3 { font-size: 0.9rem; font-weight: 700; color: var(--text); margin-bottom: 0.35rem; }
.ha-audit-card p { font-size: 0.8rem; color: var(--body); line-height: 1.6; margin: 0; }
.ha-process { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.ha-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; }
.ha-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ha-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ha-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ha-process-step .ha-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }
.ha-result-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.ha-result-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; text-align: center; }
.ha-result-icon { width: 56px; height: 56px; border-radius: 14px; background: var(--bg-teal); color: var(--teal); display: flex; align-items: center; justify-content: center; margin: 0 auto 1rem; }
.ha-result-icon svg { width: 28px; height: 28px; }
.ha-result-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ha-result-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }

/* ===== STARTUP HR (shr-) ===== */
.shr-hero-visual { display: flex; align-items: center; justify-content: center; }
.shr-hero-svg { width: 100%; max-width: 400px; }
.shr-hero-h1 { color: #1f2937; }
.shr-hero-sub { color: #4b5563; }
.shr-stages-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.shr-stage-card { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 2rem; }
.shr-stage-card--active { border-color: #0d9488; background: #f0fdfa; }
.shr-stage-badge { display: inline-block; background: #dbeafe; color: #1e40af; font-size: 0.75rem; font-weight: 700; padding: 0.2rem 0.7rem; border-radius: 20px; margin-bottom: 0.75rem; }
.shr-stage-badge--active { background: var(--teal); color: #fff; }
.shr-stage-card h3 { font-size: 1.1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.shr-stage-desc { font-size: 0.88rem; color: var(--subtle); margin-bottom: 1rem; }
.shr-stage-list { list-style: none; padding: 0; margin: 0; }
.shr-stage-list li { font-size: 0.85rem; color: var(--body); padding: 0.35rem 0; padding-left: 1.25rem; position: relative; border-bottom: 1px solid var(--border); }
.shr-stage-list li:last-child { border-bottom: none; }
.shr-stage-list li::before { content: "✓"; position: absolute; left: 0; color: var(--teal); font-weight: 700; }
.shr-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.shr-service-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.shr-service-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.shr-service-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.shr-service-icon svg { width: 22px; height: 22px; }
.shr-service-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.shr-service-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.shr-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.shr-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; }
.shr-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.shr-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.shr-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.shr-process-step .shr-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }
.shr-why-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
.shr-why-card { background: var(--bg-light); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; }
.shr-why-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.shr-why-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }

/* ===== RESPONSIVE: all new pages ===== */
@media (max-width: 900px) {
    .ihh-cases-grid, .ihm-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .hmz-cases-grid, .hrbb-services-grid, .shr-services-grid { grid-template-columns: repeat(2, 1fr); }
    .pe-packages-grid { grid-template-columns: repeat(2, 1fr); }
    .ha-audit-grid { grid-template-columns: repeat(3, 1fr); }
    .ihh-process, .ihm-process, .hmz-process, .hrbb-process, .pe-process, .shr-process { grid-template-columns: repeat(2, 1fr); }
    .ha-process { grid-template-columns: repeat(2, 1fr); }
    .ivf-decision-grid { grid-template-columns: 1fr; }
    .ivf-scenarios { grid-template-columns: 1fr; }
    .shr-stages-grid { grid-template-columns: 1fr; }
    .hmz-compare-grid { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
    .ihh-hero-visual, .ihm-hero-visual { display: none; }
    .ihh-districts, .ihm-districts { grid-template-columns: 1fr; }
    .ihh-cases-grid, .ihm-cases-grid { grid-template-columns: 1fr; }
    .ihh-why-grid, .ihm-why-grid { grid-template-columns: 1fr; }
    .ihh-process, .ihm-process { grid-template-columns: 1fr; }
    .hmz-explainer-grid { grid-template-columns: 1fr; }
    .hmz-cases-grid { grid-template-columns: 1fr; }
    .hmz-process { grid-template-columns: 1fr; }
    .hrbb-why-grid { grid-template-columns: 1fr; }
    .hrbb-services-grid { grid-template-columns: 1fr; }
    .hrbb-process { grid-template-columns: 1fr; }
    .ivf-table-wrap { font-size: 0.8rem; }
    .ivf-compare-table td, .ivf-compare-table th { padding: 0.6rem 0.75rem; }
    .pe-problems-grid { grid-template-columns: 1fr; }
    .pe-packages-grid { grid-template-columns: 1fr; }
    .pe-process { grid-template-columns: 1fr; }
    .ha-intro-grid { grid-template-columns: 1fr; }
    .ha-audit-grid { grid-template-columns: repeat(2, 1fr); }
    .ha-process { grid-template-columns: 1fr; }
    .ha-result-grid { grid-template-columns: 1fr; }
    .shr-stages-grid, .shr-services-grid, .shr-why-grid { grid-template-columns: 1fr; }
    .shr-process { grid-template-columns: 1fr; }
}

/* ===== HR-REIFEGRAD-CHECK (hrr-) ===== */
.hrr-hero {
    padding: 60px 0 40px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}
.hrr-hero-content { max-width: 680px; }
.hrr-hero-content h1 {
    font-size: clamp(1.9rem, 4vw, 2.8rem);
    font-weight: 800;
    line-height: 1.2;
    color: #1f2937;
    margin: 1rem 0;
}
.hrr-hero-content h1 .hk-highlight {
    background: linear-gradient(135deg, #0d9488, #0f766e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.hrr-hero-sub {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.75;
    margin-bottom: 1.5rem;
}
.hrr-trust-chips { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-top: 0.5rem; }
.hrr-trust-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    background: rgba(13,148,136,0.1);
    border: 1px solid rgba(13,148,136,0.25);
    color: #0f766e;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 0.3rem 0.85rem;
    border-radius: 50px;
}
.hrr-quiz-section { padding: 60px 0 80px; background: #f8fafc; }
.hrr-quiz-box {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 32px rgba(0,0,0,0.08);
    padding: 2.5rem;
    max-width: 760px;
    margin: 0 auto;
}
.hrr-progress {
    font-size: 0.82rem;
    font-weight: 600;
    color: #0d9488;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid #e0f2fe;
}
.hrr-question { margin-bottom: 2rem; }
.hrr-question-text {
    font-weight: 600;
    font-size: 1rem;
    color: #1f2937;
    margin-bottom: 0.85rem;
    line-height: 1.5;
}
.hrr-options { display: flex; flex-direction: column; gap: 0.5rem; }
.hrr-option {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}
.hrr-option:hover { border-color: #0d9488; background: #f0fdfa; }
.hrr-option input[type=radio] { margin-top: 2px; accent-color: #0d9488; flex-shrink: 0; }
.hrr-option-label { font-size: 0.95rem; color: #374151; line-height: 1.5; }
.hrr-option:has(input:checked) { border-color: #0d9488; background: #f0fdfa; }
.hrr-submit-wrap {
    text-align: center;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid #f1f5f9;
}
.hrr-submit-btn { min-width: 240px; }
.hrr-submit-btn:disabled { opacity: 0.45; cursor: not-allowed; transform: none; }
.hrr-submit-btn.hrr-btn-ready { opacity: 1; }
.hrr-submit-hint {
    font-size: 0.8rem;
    color: #9ca3af;
    margin-top: 0.5rem;
}
.hrr-hidden { display: none !important; }
.hrr-result {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 2px solid #e0f2fe;
}
.hrr-result-inner { max-width: 600px; margin: 0 auto; text-align: center; }
.hrr-result-score-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}
.hrr-result-score {
    font-size: 2rem;
    font-weight: 800;
    color: #1f2937;
}
.hrr-result-level {
    display: inline-block;
    font-size: 0.82rem;
    font-weight: 700;
    padding: 0.35rem 1rem;
    border-radius: 50px;
    border: 1.5px solid;
    letter-spacing: 0.03em;
}
.hrr-result-headline {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.75rem;
}
.hrr-result-text {
    color: #4b5563;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}
.hrr-result-next {
    background: #f8fafc;
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    text-align: left;
    margin-bottom: 1.5rem;
}
.hrr-result-next-title {
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6b7280;
    margin-bottom: 0.75rem;
}
.hrr-result-next ul { display: flex; flex-direction: column; gap: 0.5rem; }
.hrr-result-next li {
    font-size: 0.95rem;
    color: #374151;
    padding-left: 1.25rem;
    position: relative;
}
.hrr-result-next li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #0d9488;
}
.hrr-result-cta { text-align: center; }

@media (max-width: 600px) {
    .hrr-quiz-box { padding: 1.5rem 1rem; }
    .hrr-result-score { font-size: 1.5rem; }
}

/* ===== SITUATION CARDS (hk-sit-) ===== */
.hk-sit-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 2rem;
}
.hk-sit-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: #fff;
    border: 1.5px solid transparent;
    border-radius: 12px;
    padding: 1.25rem;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.hk-sit-card:hover {
    box-shadow: 0 4px 16px rgba(13,148,136,0.15);
    border-color: #0d9488;
    color: inherit;
}
.hk-sit-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ccfbf1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #0d9488;
}
.hk-sit-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}
.hk-sit-text strong {
    font-size: 0.95rem;
    color: #1f2937;
    font-weight: 600;
}
.hk-sit-text span {
    font-size: 0.82rem;
    color: var(--subtle);
}
.hk-sit-arrow {
    color: #0d9488;
    font-weight: 700;
    flex-shrink: 0;
    font-size: 1.1rem;
}
.hk-text-center-mt { text-align: center; margin-top: 1.5rem; }

/* ===== KONTAKT TOPICS (hk-ko-topics) ===== */
.hk-ko-topics { margin-top: 1.75rem; text-align: center; }
.hk-ko-topics-label {
    font-size: 0.8rem;
    color: rgba(255,255,255,0.6);
    margin-bottom: 0.65rem;
    font-weight: 500;
}
.hk-ko-topics-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
}
.hk-ko-chip {
    background: rgba(255,255,255,0.70);
    border: 1px solid rgba(255,255,255,0.70);
    color: rgba(255,255,255,0.9);
    border-radius: 50px;
    padding: 0.35rem 0.9rem;
    font-size: 0.8rem;
    text-decoration: none;
    transition: background 0.2s;
}
.hk-ko-chip:hover { background: rgba(255,255,255,0.70); color: #fff; }

@media (max-width: 900px) {
    .hk-sit-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .hk-sit-grid { grid-template-columns: 1fr; }
    .hk-sit-card { padding: 1rem; }
}

/* ===== REFERENZEN (ref-) ===== */
.ref-hero {
    padding: 60px 0 40px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}
.ref-hero-content { max-width: 680px; }
.ref-hero-content h1 {
    font-size: clamp(1.9rem, 4vw, 2.8rem);
    font-weight: 800;
    line-height: 1.2;
    color: #1f2937;
    margin: 1rem 0;
}
.ref-hero-content h1 .hk-highlight {
    background: linear-gradient(135deg, #0d9488, #0f766e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.ref-hero-sub {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.75;
}
.ref-intro {
    max-width: 760px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    color: #4b5563;
    line-height: 1.75;
}
.ref-cases { display: flex; flex-direction: column; gap: 2rem; }
.ref-case {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.07);
    padding: 2rem;
}
.ref-case-top { margin-bottom: 1.5rem; }
.ref-case-tag {
    display: inline-block;
    background: #ccfbf1;
    color: #0f766e;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 0.25rem 0.75rem;
    border-radius: 50px;
    margin-bottom: 0.75rem;
}
.ref-case-headline {
    font-size: 1.15rem;
    font-weight: 700;
    color: #1f2937;
    line-height: 1.4;
}
.ref-case-cols {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #f1f5f9;
}
.ref-case-col { display: flex; flex-direction: column; gap: 0.5rem; }
.ref-case-col-label {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #0d9488;
}
.ref-case-col p { font-size: 0.92rem; color: #4b5563; line-height: 1.65; }
.ref-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-bottom: 1.25rem;
}
.ref-stat {
    background: #f0fdfa;
    color: #0f766e;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0.3rem 0.85rem;
    border-radius: 50px;
    border: 1px solid #ccfbf1;
}
.ref-quote {
    border-left: 3px solid #0d9488;
    padding: 0.75rem 1.25rem;
    background: #f8fafc;
    border-radius: 0 8px 8px 0;
    margin: 0;
}
.ref-quote p {
    font-style: italic;
    color: #374151;
    font-size: 0.95rem;
    line-height: 1.65;
    margin-bottom: 0.4rem;
}
.ref-quote-author {
    font-size: 0.78rem;
    color: #6b7280;
    font-style: normal;
}
.ref-general-cta {
    text-align: center;
    max-width: 560px;
    margin: 0 auto;
    padding: 2.5rem;
    background: linear-gradient(135deg, #f0fdfa, #ccfbf1);
    border-radius: 16px;
}
.ref-general-cta h2 {
    font-size: 1.6rem;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.75rem;
}
.ref-general-cta p {
    color: #4b5563;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
    .ref-case-cols { grid-template-columns: 1fr; gap: 1rem; }
    .ref-case { padding: 1.5rem 1rem; }
}

/* ===== ONBOARDING-CHECKLISTE (oc-) ===== */
.oc-print-header {
    display: none;
    padding: 1rem 1.5rem;
    border-bottom: 2px solid #0d9488;
    margin-bottom: 1rem;
}
.oc-hero {
    padding: 60px 0 40px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}
.oc-hero-content { max-width: 680px; }
.oc-hero-content h1 {
    font-size: clamp(1.9rem, 4vw, 2.8rem);
    font-weight: 800;
    line-height: 1.2;
    color: #1f2937;
    margin: 1rem 0;
}
.oc-hero-content h1 .hk-highlight {
    background: linear-gradient(135deg, #0d9488, #0f766e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.oc-hero-sub {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.75;
    margin-bottom: 1.25rem;
}
.oc-hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-bottom: 1.5rem;
}
.oc-hero-chip {
    background: #ccfbf1;
    color: #0f766e;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 0.3rem 0.85rem;
    border-radius: 50px;
}
.oc-print-btn-wrap { margin-top: 0.5rem; }
.oc-checklist-section { background: #f8fafc; }
.oc-checklist { display: flex; flex-direction: column; gap: 2rem; max-width: 860px; margin: 0 auto; }
.oc-phase {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.05);
}
.oc-phase-title {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.5rem;
    background: #1f2937;
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    border-left: 4px solid #0d9488;
}
.oc-phase-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #0d9488;
    color: #fff;
    font-size: 0.85rem;
    font-weight: 800;
    flex-shrink: 0;
}
.oc-items { padding: 0.5rem 0; }
.oc-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.6rem 1.5rem;
    border-bottom: 1px solid #f1f5f9;
}
.oc-item:last-child { border-bottom: none; }
.oc-checkbox {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid #d1d5db;
    border-radius: 4px;
    flex-shrink: 0;
    margin-top: 2px;
}
.oc-item-text { font-size: 0.92rem; color: #374151; line-height: 1.55; }
.oc-info-box {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    background: #eff6ff;
    border-left: 3px solid #2563eb;
    border-radius: 0 8px 8px 0;
    padding: 1rem 1.25rem;
    margin-top: 2rem;
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
    color: #374151;
    font-size: 0.9rem;
    line-height: 1.6;
}
.oc-info-box svg { flex-shrink: 0; color: #2563eb; margin-top: 2px; }
.oc-cta-box {
    max-width: 640px;
    margin: 0 auto;
    text-align: center;
}
.oc-cta-box h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 0.75rem;
}
.oc-cta-box p {
    color: #4b5563;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}
.oc-internal-cta {
    text-align: center;
    padding: 1.5rem;
    color: #6b7280;
}
.oc-internal-cta p { margin-bottom: 0.5rem; }

@media (max-width: 600px) {
    .oc-phase-title { font-size: 0.9rem; padding: 0.875rem 1rem; }
    .oc-item { padding: 0.55rem 1rem; }
}

/* ===== PRINT STYLES ===== */
@media print {
    .hk-nav,
    .hk-footer,
    .hk-ko-sticky,
    .btn:not(.oc-no-print),
    .hk-cta-band,
    .hk-index-partner,
    .oc-cta-box,
    .oc-internal-cta,
    .oc-print-btn-wrap { display: none !important; }
    .oc-print-header { display: block !important; }
    .oc-phase { break-inside: avoid; }
    body { font-size: 12pt; }
    a { color: inherit; text-decoration: none; }
    .oc-hero { padding: 1rem 0; background: none; }
    .oc-hero-content h1 { font-size: 1.5rem; }
    .hk-hero-eyebrow,
    .oc-hero-chips,
    .hk-breadcrumb { display: none !important; }
}

/* ===== TEAM AVATAR (Maja / kein Foto) ===== */
.hk-index-team-avatar {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    margin: 0 auto 1rem;
    flex-shrink: 0;
}
.hk-index-team-badge {
    display: inline-block;
    font-size: 0.65rem;
    font-weight: 700;
    background: #d1fae5;
    color: #065f46;
    border-radius: 50px;
    padding: 0.1rem 0.5rem;
    margin-left: 0.35rem;
    vertical-align: middle;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.hk-uu-team-avatar {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    flex-shrink: 0;
}
.hk-uu-team-badge {
    display: inline-block;
    font-size: 0.65rem;
    font-weight: 700;
    background: #d1fae5;
    color: #065f46;
    border-radius: 50px;
    padding: 0.1rem 0.5rem;
    margin-left: 0.35rem;
    vertical-align: middle;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* ===== INTERIM HR KÖLN (ihko-) ===== */
.ihko-hero-visual { display: flex; align-items: center; justify-content: center; }
.ihko-skyline { width: 100%; max-width: 420px; }
.ihko-districts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2rem; }
.ihko-district-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.70); border-radius: 12px; padding: 1.25rem; transition: background 0.2s; }
.ihko-district-card:hover { background: rgba(255,255,255,0.70); }
.ihko-district-name { font-size: 0.9rem; font-weight: 700; color: #5eead4; margin-bottom: 0.3rem; }
.ihko-district-desc { font-size: 0.82rem; color: #94a3b8; line-height: 1.55; }
.ihko-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ihko-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.ihko-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihko-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.ihko-case-icon svg { width: 22px; height: 22px; }
.ihko-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihko-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihko-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ihko-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihko-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihko-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihko-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihko-stat-item { text-align: center; }
.ihko-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihko-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihko-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihko-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; position: relative; }
.ihko-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ihko-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihko-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihko-process-step .ihko-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== INTERIM HR LEIPZIG (ihle-) ===== */
.ihle-hero-visual { display: flex; align-items: center; justify-content: center; }
.ihle-skyline { width: 100%; max-width: 420px; }
.ihle-districts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2rem; }
.ihle-district-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.70); border-radius: 12px; padding: 1.25rem; transition: background 0.2s; }
.ihle-district-card:hover { background: rgba(255,255,255,0.70); }
.ihle-district-name { font-size: 0.9rem; font-weight: 700; color: #5eead4; margin-bottom: 0.3rem; }
.ihle-district-desc { font-size: 0.82rem; color: #94a3b8; line-height: 1.55; }
.ihle-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ihle-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.ihle-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihle-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.ihle-case-icon svg { width: 22px; height: 22px; }
.ihle-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihle-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihle-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ihle-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihle-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihle-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihle-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihle-stat-item { text-align: center; }
.ihle-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihle-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihle-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihle-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; position: relative; }
.ihle-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ihle-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihle-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihle-process-step .ihle-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== INTERIM HR FREIBURG (ihfr-) ===== */
.ihfr-hero-visual { display: flex; align-items: center; justify-content: center; }
.ihfr-skyline { width: 100%; max-width: 420px; }
.ihfr-districts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2rem; }
.ihfr-district-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.70); border-radius: 12px; padding: 1.25rem; transition: background 0.2s; }
.ihfr-district-card:hover { background: rgba(255,255,255,0.70); }
.ihfr-district-name { font-size: 0.9rem; font-weight: 700; color: #5eead4; margin-bottom: 0.3rem; }
.ihfr-district-desc { font-size: 0.82rem; color: #94a3b8; line-height: 1.55; }
.ihfr-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ihfr-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.ihfr-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihfr-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.ihfr-case-icon svg { width: 22px; height: 22px; }
.ihfr-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihfr-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihfr-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ihfr-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihfr-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihfr-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihfr-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihfr-stat-item { text-align: center; }
.ihfr-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihfr-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihfr-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihfr-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; position: relative; }
.ihfr-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ihfr-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihfr-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihfr-process-step .ihfr-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== INTERIM HR MÜNSTER (ihms-) ===== */
.ihms-hero-visual { display: flex; align-items: center; justify-content: center; }
.ihms-skyline { width: 100%; max-width: 420px; }
.ihms-districts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2rem; }
.ihms-district-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.70); border-radius: 12px; padding: 1.25rem; transition: background 0.2s; }
.ihms-district-card:hover { background: rgba(255,255,255,0.70); }
.ihms-district-name { font-size: 0.9rem; font-weight: 700; color: #5eead4; margin-bottom: 0.3rem; }
.ihms-district-desc { font-size: 0.82rem; color: #94a3b8; line-height: 1.55; }
.ihms-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ihms-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.ihms-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihms-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.ihms-case-icon svg { width: 22px; height: 22px; }
.ihms-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihms-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihms-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ihms-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihms-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihms-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihms-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihms-stat-item { text-align: center; }
.ihms-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihms-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihms-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihms-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; position: relative; }
.ihms-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ihms-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihms-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihms-process-step .ihms-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== INTERIM HR DÜSSELDORF (ihdu-) ===== */
.ihdu-hero-visual { display: flex; align-items: center; justify-content: center; }
.ihdu-skyline { width: 100%; max-width: 420px; }
.ihdu-districts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-top: 2rem; }
.ihdu-district-card { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.70); border-radius: 12px; padding: 1.25rem; transition: background 0.2s; }
.ihdu-district-card:hover { background: rgba(255,255,255,0.70); }
.ihdu-district-name { font-size: 0.9rem; font-weight: 700; color: #5eead4; margin-bottom: 0.3rem; }
.ihdu-district-desc { font-size: 0.82rem; color: #94a3b8; line-height: 1.55; }
.ihdu-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ihdu-case-card { background: var(--white); border: 1px solid var(--border); border-radius: 14px; padding: 1.75rem; transition: transform 0.2s, box-shadow 0.2s; }
.ihdu-case-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.07); }
.ihdu-case-icon { width: 44px; height: 44px; border-radius: 10px; background: var(--bg-teal); color: var(--primary); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; }
.ihdu-case-icon svg { width: 22px; height: 22px; }
.ihdu-case-card h3 { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; line-height: 1.35; }
.ihdu-case-card p { font-size: 0.87rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihdu-why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.ihdu-why-text h2 { font-size: 1.85rem; font-weight: 800; color: var(--text); line-height: 1.25; margin-bottom: 1rem; }
.ihdu-why-text p { font-size: 0.97rem; color: var(--body); line-height: 1.8; margin-bottom: 1rem; }
.ihdu-stats-box { background: linear-gradient(135deg, #0f172a 0%, #134e4a 100%); border-radius: 20px; padding: 2.5rem; }
.ihdu-stats-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.ihdu-stat-item { text-align: center; }
.ihdu-stat-val { font-size: 2.25rem; font-weight: 800; color: #5eead4; line-height: 1; margin-bottom: 0.4rem; }
.ihdu-stat-lbl { font-size: 0.85rem; color: rgba(255,255,255,0.82); line-height: 1.45; }
.ihdu-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ihdu-process-step { background: var(--white); border: 1px solid var(--border); border-radius: 16px; padding: 1.75rem 1.5rem; position: relative; }
.ihdu-process-num { width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: var(--white); font-size: 1.1rem; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; box-shadow: 0 4px 14px rgba(13,148,136,0.3); }
.ihdu-process-step h3 { font-size: 0.97rem; font-weight: 700; color: var(--text); margin-bottom: 0.5rem; }
.ihdu-process-step p { font-size: 0.85rem; color: var(--body); line-height: 1.65; margin: 0; }
.ihdu-process-step .ihdu-duration { display: inline-block; margin-top: 0.75rem; font-size: 0.78rem; font-weight: 600; color: var(--primary); background: var(--bg-teal); padding: 0.2rem 0.6rem; border-radius: 20px; }

/* ===== RESPONSIVE: New city pages (max-width: 1024px) ===== */
@media (max-width: 1024px) {
    .ihko-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .ihko-process { grid-template-columns: repeat(2, 1fr); }
    .ihle-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .ihle-process { grid-template-columns: repeat(2, 1fr); }
    .ihfr-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .ihfr-process { grid-template-columns: repeat(2, 1fr); }
    .ihms-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .ihms-process { grid-template-columns: repeat(2, 1fr); }
    .ihdu-cases-grid { grid-template-columns: repeat(2, 1fr); }
    .ihdu-process { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .ihko-hero-visual, .ihle-hero-visual, .ihfr-hero-visual, .ihms-hero-visual, .ihdu-hero-visual { display: none; }
    .ihko-districts, .ihle-districts, .ihfr-districts, .ihms-districts, .ihdu-districts { grid-template-columns: 1fr; }
    .ihko-cases-grid, .ihle-cases-grid, .ihfr-cases-grid, .ihms-cases-grid, .ihdu-cases-grid { grid-template-columns: 1fr; }
    .ihko-why-grid, .ihle-why-grid, .ihfr-why-grid, .ihms-why-grid, .ihdu-why-grid { grid-template-columns: 1fr; }
    .ihko-process, .ihle-process, .ihfr-process, .ihms-process, .ihdu-process { grid-template-columns: 1fr; }
    .ihko-stats-row, .ihle-stats-row, .ihfr-stats-row, .ihms-stats-row, .ihdu-stats-row { grid-template-columns: 1fr 1fr; }
}

/* ===== MEGA-DROPDOWN ===== */
.hk-dropdown--mega {
    display: none;
    grid-template-columns: repeat(3, 1fr);
    min-width: 620px;
    gap: 0;
    padding: 0.75rem;
}
.hk-has-dropdown:hover .hk-dropdown--mega,
.hk-has-dropdown.hk-dropdown-open .hk-dropdown--mega { display: grid; }
.hk-dropdown-group {
    padding: 0.25rem;
    border-right: 1px solid #f1f5f9;
}
.hk-dropdown-group:last-child { border-right: none; }
.hk-dropdown-label {
    display: block;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--teal);
    padding: 0.4rem 1rem 0.5rem;
}
@media (max-width: 768px) {
    .hk-dropdown--mega { grid-template-columns: 1fr; min-width: unset; }
    .hk-dropdown-group { border-right: none; border-bottom: 1px solid #f1f5f9; padding-bottom: 0.5rem; margin-bottom: 0.25rem; }
    .hk-dropdown-group:last-child { border-bottom: none; }
}

/* ===== VERWANDTE LEISTUNGEN (service cross-links) ===== */
.hk-related-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.5rem;
}
.hk-related-card {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.5rem;
    background: var(--white);
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    text-decoration: none;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.hk-related-card:hover {
    border-color: var(--teal);
    box-shadow: 0 6px 20px rgba(13,148,136,0.1);
    transform: translateY(-3px);
}
.hk-related-card h3 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-dark);
    margin: 0;
}
.hk-related-card p {
    font-size: 0.875rem;
    color: var(--text-body);
    margin: 0;
    flex: 1;
}
.hk-related-link {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--teal);
}
@media (max-width: 768px) {
    .hk-related-grid { grid-template-columns: 1fr; }
}

/* ===== WEITERE STANDORTE (city cross-links) ===== */
.hk-standorte-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}
.hk-standort-card {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 1rem 1.25rem;
    background: var(--white);
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    text-decoration: none;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.hk-standort-card:hover {
    border-color: var(--teal);
    box-shadow: 0 4px 12px rgba(13,148,136,0.12);
    transform: translateY(-2px);
}
.hk-standort-city {
    font-weight: 700;
    font-size: 1rem;
    color: var(--text-dark);
}
.hk-standort-link {
    font-size: 0.85rem;
    color: var(--teal);
}
.hk-standorte-cta {
    text-align: center;
    margin-top: 1.5rem;
}
.btn-outline-teal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem 2rem;
    border: 2px solid var(--teal);
    border-radius: 50px;
    color: var(--teal);
    background: transparent;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}
.btn-outline-teal:hover {
    background: var(--teal);
    color: var(--white);
}
@media (max-width: 768px) {
    .hk-standorte-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ===== BLOG SEARCH (hk-blog-search-) ===== */
.hk-blog-search-wrap {
    background: #fff;
    padding: 2.5rem 0 0;
    display: flex;
    justify-content: center;
}
.hk-blog-search-inner {
    position: relative;
    display: flex;
    align-items: center;
    max-width: 560px;
    width: 100%;
}
.hk-blog-search-icon {
    position: absolute;
    left: 1rem;
    color: #9ca3af;
    pointer-events: none;
    flex-shrink: 0;
}
.hk-blog-search-input {
    width: 100%;
    padding: 0.75rem 2.75rem 0.75rem 2.75rem;
    font-size: 0.95rem;
    color: #1f2937;
    background: #f8fafc;
    border: 1.5px solid #e5e7eb;
    border-radius: 50px;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    appearance: none;
    -webkit-appearance: none;
}
.hk-blog-search-input::placeholder { color: #9ca3af; }
.hk-blog-search-input:focus {
    border-color: #0d9488;
    box-shadow: 0 0 0 3px rgba(13,148,136,0.15);
    background: #fff;
}
/* hide the native clear button in Chrome/Safari */
.hk-blog-search-input::-webkit-search-cancel-button { display: none; }
.hk-blog-search-clear {
    position: absolute;
    right: 0.75rem;
    display: none;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: none;
    background: #e5e7eb;
    color: #6b7280;
    border-radius: 50%;
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    padding: 0;
}
.hk-blog-search-clear:hover {
    background: #0d9488;
    color: #fff;
}

/* ===== ÜBER UNS HERO RESPONSIVE ===== */
@media (max-width: 900px) {
    .hk-uu-hero-inner {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
    .hk-uu-hero-sub { max-width: 100%; }
}
@media (max-width: 600px) {
    .hk-uu-hero { padding: 56px 0 64px; }
    .hk-uu-hero-btns { flex-direction: column; align-items: flex-start; }
    .hk-uu-hero-stats { grid-template-columns: 1fr 1fr; gap: 1.5rem 1rem; padding: 1.75rem 1.25rem; }
    .hk-uu-hero-stat-num { font-size: 1.7rem; }
    .hk-blog-search-inner { max-width: 100%; }
}

/* ============================================================
   Cookie Consent Banner (hk-cookie-)
   ============================================================ */
.hk-cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    padding: 0 1rem 1rem;
    pointer-events: none;
    transform: translateY(100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.hk-cookie-banner.hk-cookie-visible {
    transform: translateY(0);
    pointer-events: auto;
}
.hk-cookie-inner {
    max-width: 820px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.06);
    padding: 1.25rem 1.5rem;
}
.hk-cookie-text {
    margin: 0 0 1rem;
    font-size: 0.9375rem;
    color: #374151;
    line-height: 1.5;
}
.hk-cookie-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
.hk-cookie-settings-btn {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
    color: #0d9488;
    cursor: pointer;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-right: auto;
    transition: color 0.2s;
}
.hk-cookie-settings-btn:hover {
    color: #0f766e;
}
.hk-cookie-chevron {
    font-size: 0.7rem;
    display: inline-block;
    transition: transform 0.2s;
}
.hk-cookie-settings-btn[aria-expanded="true"] .hk-cookie-chevron {
    transform: rotate(180deg);
}
.hk-cookie-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 50px;
    cursor: pointer;
    border: 2px solid transparent;
    transition: background 0.2s, color 0.2s, border-color 0.2s;
    white-space: nowrap;
}
.hk-cookie-btn-primary {
    background: #0d9488;
    color: #ffffff;
    border-color: #0d9488;
}
.hk-cookie-btn-primary:hover {
    background: #0f766e;
    border-color: #0f766e;
}
.hk-cookie-btn-outline {
    background: transparent;
    color: #0d9488;
    border-color: #0d9488;
}
.hk-cookie-btn-outline:hover {
    background: #f0fdfa;
}
.hk-cookie-details {
    margin-top: 1rem;
    border-top: 1px solid #e5e7eb;
    padding-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}
.hk-cookie-detail-item {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}
.hk-cookie-detail-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}
.hk-cookie-detail-name {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1f2937;
}
.hk-cookie-detail-badge {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.15rem 0.6rem;
    border-radius: 50px;
}
.hk-cookie-badge-always {
    background: #d1fae5;
    color: #065f46;
}
.hk-cookie-badge-consent {
    background: #dbeafe;
    color: #1d4ed8;
}
.hk-cookie-detail-desc {
    margin: 0;
    font-size: 0.8125rem;
    color: #6b7280;
    line-height: 1.4;
}
@media (max-width: 600px) {
    .hk-cookie-inner {
        padding: 1rem 1rem;
    }
    .hk-cookie-actions {
        gap: 0.5rem;
    }
    .hk-cookie-settings-btn {
        margin-right: 0;
        width: 100%;
    }
    .hk-cookie-btn {
        flex: 1;
        min-width: 0;
        justify-content: center;
    }
}

/* ===================================================
   READING PROGRESS BAR
   =================================================== */
#hk-reading-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(90deg, #0d9488, #14b8a6);
    z-index: 10000;
    transition: width 0.08s linear;
    pointer-events: none;
}

/* ===== SHARE BAR ===== */
.hk-share-bar {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin: 2rem 0 1.5rem;
    padding: 1.25rem 1.5rem;
    background: #f0fdfa;
    border-radius: 12px;
    border: 1px solid #ccfbf1;
}
.hk-share-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    margin-right: 0.25rem;
}
.hk-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    text-decoration: none;
    background: transparent;
    border: 1.5px solid #0d9488;
    color: #0d9488;
    transition: background 0.15s, color 0.15s, border-color 0.15s, transform 0.12s;
    flex-shrink: 0;
}
.hk-share-btn:hover { background: #0d9488; color: #fff; border-color: #0d9488; transform: translateY(-1px); filter: none; }

/* ===== AUTHOR BOX – picture wrapper fix ===== */
.hk-author-box picture {
    display: block;
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    overflow: hidden;
}
.hk-share-privacy {
    margin-left: auto;
    font-size: 0.7rem;
    color: #9ca3af;
    white-space: nowrap;
}
@media (max-width: 600px) {
    .hk-share-bar { flex-wrap: wrap; }
    .hk-share-privacy { width: 100%; margin-left: 0; margin-top: 0.25rem; }
}

/* === "Was wir nicht machen"-Sektion (hk-not-) === */
.hk-not-section { background: #f8fafc; padding: 5rem 0; }
.hk-not-inner { max-width: 900px; margin: 0 auto; text-align: center; }
.hk-not-inner > .hk-section-title { margin-bottom: 0.5rem; }
.hk-not-inner > .hk-section-sub { margin-bottom: 3rem; }
.hk-not-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; text-align: left; }
.hk-not-card { background: #fff; border: 1.5px solid #e5e7eb; border-radius: 12px; padding: 1.5rem; }
.hk-not-x { display: inline-block; width: 28px; height: 28px; background: #fee2e2; color: #ef4444; border-radius: 50%; text-align: center; line-height: 28px; font-weight: 700; font-size: 14px; margin-bottom: 0.75rem; }
.hk-not-card h3 { font-size: 1rem; font-weight: 700; color: #1f2937; margin-bottom: 0.5rem; }
.hk-not-card p { font-size: 0.9rem; color: #6b7280; line-height: 1.6; margin: 0; }
@media (max-width: 640px) { .hk-not-grid { grid-template-columns: 1fr; } }

/* ===== SOURCES SECTION (blog articles) ===== */
.hk-sources { padding: 2rem 0; border-top: 1px solid #e5e7eb; margin-top: 3rem; }
.hk-sources-title { font-size: 1rem; font-weight: 600; color: #6b7280; margin-bottom: 0.75rem; }
.hk-sources-list { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; }
.hk-sources-list a { font-size: 0.875rem; color: #0d9488; text-decoration: none; }
.hk-sources-list a:hover { text-decoration: underline; }

/* Exit-Intent-CTA vor hk-sources */
.hk-pre-sources-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    padding: 0.875rem 1.25rem;
    margin-bottom: 1.5rem;
}
.hk-pre-sources-cta p {
    margin: 0;
    font-size: 0.95rem;
    color: #0f766e;
    font-weight: 500;
}
.hk-pre-sources-cta a {
    color: #0d9488;
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    white-space: nowrap;
}
.hk-pre-sources-cta a:hover { text-decoration: underline; }
@media (max-width: 600px) {
    .hk-pre-sources-cta { flex-direction: column; align-items: flex-start; gap: 0.5rem; }
}

/* Gruppe footer styles */
.hk-footer-gruppe-sub { font-size: 0.75rem; color: rgba(255,255,255,0.70); margin-bottom: 0.5rem; }
.hk-footer-gruppe-link { display: block; font-size: 0.8rem; color: #5eead4; text-decoration: none; margin-top: 0.5rem; }
.hk-footer-gruppe-link:hover { color: #99f6e4; }

/* Topbar Schwester-Sites */
.hk-topbar-site--gk { border: 1px solid rgba(22,163,74,0.45); color: #86efac; }
.hk-topbar-site--gk:hover { background: #16a34a; color: #fff; border-color: #16a34a; }
.hk-topbar-site--zk { border: 1px solid rgba(8,145,178,0.45); color: #67e8f9; }
.hk-topbar-site--zk:hover { background: #0891b2; color: #fff; border-color: #0891b2; }

/* ─────────────────────────────────────────────
   BFSG: Skip-Link für Tastatur-Navigation
   ───────────────────────────────────────────── */
.skip-link {
    position: absolute;
    top: -100%;
    left: 1rem;
    background: #1f2937;
    color: #fff;
    padding: 0.75rem 1.5rem;
    border-radius: 4px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    z-index: 10000;
    transition: top 0.15s;
}
.skip-link:focus {
    top: 1rem;
    outline: 3px solid #fff;
    outline-offset: 2px;
}

/* ─────────────────────────────────────────────
   BFSG: Reduced Motion Support
   ───────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}


/* BFSG: Body-Links Underline */
.hk-article-body p a, .hk-article-body li a, .hk-article-body td a {
    text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px;
}
.hk-article-body p a:hover, .hk-article-body li a:hover { text-decoration-thickness: 2px; }


/* ============================================================
   BLOG-INDEX UPGRADE 2026-05-24 - Featured + Hub-Cards
   ============================================================ */
.hk-blog-featured {
    padding: 2.5rem 0 0;
}
.hk-blog-featured-card {
    display: block;
    background: linear-gradient(135deg, #0d9488 0%, #134e4a 100%);
    color: #fff;
    text-decoration: none;
    padding: 2.5rem 2.25rem;
    border-radius: 18px;
    box-shadow: 0 12px 36px rgba(13,148,136,0.18);
    transition: transform 0.2s, box-shadow 0.2s;
    position: relative;
    overflow: hidden;
}
.hk-blog-featured-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 50% 70% at 85% 30%, rgba(255,255,255,0.08) 0%, transparent 70%);
    pointer-events: none;
}
.hk-blog-featured-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 48px rgba(13,148,136,0.26);
}
.hk-blog-featured-eyebrow {
    display: inline-block;
    background: rgba(255,255,255,0.18);
    color: #ccfbf1;
    padding: 0.3rem 0.85rem;
    border-radius: 50px;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 1rem;
    position: relative;
}
.hk-blog-featured-card h2 {
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 0.9rem;
    color: #fff;
    position: relative;
}
.hk-blog-featured-excerpt {
    font-size: 1.05rem;
    line-height: 1.6;
    color: rgba(255,255,255,0.86);
    margin: 0 0 1.4rem;
    max-width: 720px;
    position: relative;
}
.hk-blog-featured-meta {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
    position: relative;
}
.hk-blog-featured-meta .hk-blog-cat {
    background: rgba(255,255,255,0.95);
}
.hk-blog-featured-meta-text {
    color: rgba(255,255,255,0.78);
    font-size: 0.9rem;
}
.hk-blog-featured-cta {
    display: inline-block;
    background: #fff;
    color: #0f766e;
    padding: 0.7rem 1.4rem;
    border-radius: 50px;
    font-weight: 700;
    font-size: 0.95rem;
    position: relative;
    transition: background 0.2s, color 0.2s;
}
.hk-blog-featured-card:hover .hk-blog-featured-cta {
    background: #ccfbf1;
    color: #134e4a;
}

.hk-blog-hubs {
    padding: 3rem 0 1.5rem;
}
.hk-blog-hubs-head {
    text-align: center;
    margin-bottom: 2rem;
}
.hk-blog-hubs-head h2 {
    font-size: clamp(1.4rem, 2.4vw, 1.8rem);
    font-weight: 800;
    color: #1f2937;
    margin: 0.6rem 0 0.5rem;
}
.hk-blog-hubs-head p {
    color: #6b7280;
    font-size: 0.98rem;
    max-width: 560px;
    margin: 0 auto;
}
.hk-blog-hubs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}
.hk-blog-hub-card {
    background: var(--hub-bg, #f0fdfa);
    border-radius: 14px;
    padding: 1.25rem 1.25rem 1rem;
    text-decoration: none;
    color: #1f2937;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    border: 1px solid transparent;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
    position: relative;
}
.hk-blog-hub-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 26px rgba(0,0,0,0.08);
    border-color: var(--hub-fg, #0f766e);
}
.hk-blog-hub-badge {
    display: inline-block;
    background: rgba(255,255,255,0.85);
    color: var(--hub-fg, #0f766e);
    padding: 0.22rem 0.7rem;
    border-radius: 50px;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    align-self: flex-start;
}
.hk-blog-hub-card p {
    font-size: 0.92rem;
    line-height: 1.5;
    color: #4b5563;
    margin: 0;
}
.hk-blog-hub-arrow {
    color: var(--hub-fg, #0f766e);
    font-weight: 700;
    align-self: flex-end;
    font-size: 1.1rem;
    transition: transform 0.2s;
}
.hk-blog-hub-card:hover .hk-blog-hub-arrow {
    transform: translateX(4px);
}
.hk-blog-cat--verguetung { background: #dbeafe; color: #1d4ed8; }

@media (max-width: 600px) {
    .hk-blog-featured-card { padding: 1.75rem 1.4rem; }
    .hk-blog-hubs-grid { grid-template-columns: 1fr; }
}
