.hero-eyebrow,.live-pill{
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:transparent;
    border:0;
    border-radius:100px;
    padding:0;
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    font-size:11px;
    font-weight:400;
    color:var(--text-3);
    letter-spacing:0.005em;
    margin-bottom:24px;
  }
  .hero-eyebrow svg,.live-pill svg{
    width:12px;
    height:12px;
    flex-shrink:0;
  }
  .hero-eyebrow #live-date,.live-pill #live-date{
    color:var(--text-3);
  }
@media (max-width:768px){
  .footer .footer-nav{display:none !important}
  .footer .footer-links{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    gap:4px 10px !important;
    max-width:none !important;
    justify-content:center !important;
    grid-template-columns:none !important;
    font-size:12px;
  }
  .footer .footer-inner{gap:8px}
  .footer{padding:20px 16px;margin-top:24px}
}
.ti-mobile-hero-search{display:none}
@media (max-width:768px){
  .ti-mobile-hero-search{display:block;margin-top:12px;position:relative}
  .ti-mobile-hero-search-bar{display:flex;align-items:center;gap:8px;background:var(--bg-3);border:1px solid var(--border);padding:10px 14px;border-radius:10px;transition:border-color 0.15s,background 0.15s}
  .ti-mobile-hero-search-bar:focus-within{border-color:var(--primary);background:var(--bg-card,var(--bg-2))}
  .ti-mobile-hero-search-icon{width:14px;height:14px;color:var(--text-3);flex-shrink:0}
  .ti-mobile-hero-search-input{flex:1;background:transparent;border:none;outline:none;font-family:inherit;font-size:14px;color:var(--text);min-width:0;padding:0;line-height:1.4}
  .ti-mobile-hero-search-input::placeholder{color:var(--text-3)}
  .ti-mobile-hero-search-input::-webkit-search-cancel-button,
  .ti-mobile-hero-search-input::-webkit-search-decoration{display:none}
  .ti-mobile-hero-search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--bg-card,var(--bg-2));border:1px solid var(--border);border-radius:10px;padding:6px;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity 0.18s,transform 0.18s;box-shadow:0 12px 32px rgba(0,0,0,0.22);z-index:200;max-height:60vh;overflow-y:auto}
  .ti-mobile-hero-search-dropdown.open{opacity:1;pointer-events:auto;transform:translateY(0)}
  .ti-mobile-hero-search-dropdown::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary),var(--accent),transparent);opacity:0.5;pointer-events:none}
  .ti-mobile-hero-search-section{display:flex;align-items:center;padding:10px 12px 8px;font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-3);font-weight:500;border-bottom:1px solid var(--border);margin-bottom:2px}
  .ti-mobile-hero-search-result{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;text-decoration:none;color:inherit}
  .ti-mobile-hero-search-result + .ti-mobile-hero-search-result{margin-top:2px}
  .ti-mobile-hero-search-result:active{background:var(--bg-3)}
  .ti-mobile-hero-search-result-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
  .ti-mobile-hero-search-result-company{font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;color:var(--text-3);letter-spacing:0.08em;font-weight:500;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ti-mobile-hero-search-result-name{font-size:14px;font-weight:600;color:var(--text);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ti-mobile-hero-search-result-arrow{color:var(--text-3);font-size:16px;line-height:1;flex-shrink:0}
  .ti-mobile-hero-search-empty{padding:20px 16px;text-align:center;color:var(--text-3);font-size:13px}
  .ti-mobile-hero-search-empty b{color:var(--text);font-weight:500}
}
@media (max-width:768px){
  /* Fix 2: CTA behält ORIGINAL size. Search matcht CTA-Größe (kleiner, centered).
     CTA + Search als Block (tight gap zwischen ihnen), größerer Abstand zu KPIs.
     Referenz: Detail-Page pill + notify-link Block. */
  .hero-cta-row{display:flex;flex-direction:column;align-items:center;gap:0}
  /* CTA: NO width override — bleibt auto (content-based, wie ursprünglich) */
  .ti-mobile-hero-search{max-width:240px!important;width:auto!important;margin:8px auto 0!important;display:block!important}
  .ti-mobile-hero-search-bar{max-width:240px!important;margin:0 auto!important;padding:8px 16px!important;border-radius:8px!important;background:var(--bg-3)!important;border:1px solid var(--border)!important;gap:8px}
  .ti-mobile-hero-search-input{font-size:13px!important;min-width:0!important}
  /* Größerer Abstand von Search-Block zu KPI-Cards */
  .hero-cta-row{margin-bottom:44px!important}
  section.quick-stats,.quick-stats{margin-top:0!important}

  /* Fix 3: Back-Link on detail pages — USER REQUEST: raus, Hero rutscht hoch */
  .ti-mobile-back-link{display:none!important}

  /* Fix 4: KPI stat-num −8px total on mobile — HIGHER specificity to beat
     `.stat:not(.stat-hero) .stat-num{font-size:24px!important}` from ti-stat-card */
  .stat:not(.stat-hero) .stat-num,
  .stat .stat-num,
  section.quick-stats .stat-num{font-size:16px!important;letter-spacing:-0.02em!important}
  .stat:not(.stat-hero) .stat-num.stat-num--text,
  .stat .stat-num.stat-num--text,
  section.quick-stats .stat-num.stat-num--text{font-size:12px!important}
}
.nav-linkedin-mobile{display:none}
@media (max-width:1023px){
  .nav-linkedin-mobile{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 8px;
    border-radius:6px;
    color:var(--text-3);
    background:transparent;
    text-decoration:none;
    transition:background 0.15s,color 0.15s;
  }
  .nav-linkedin-mobile:hover,
  .nav-linkedin-mobile:active{
    background:var(--bg-3);
    color:var(--text);
  }
  .nav-linkedin-mobile svg{
    width:16px;
    height:16px;
    display:block;
  }
}
.nav-search-toggle-mobile,.ti-navbar-search-panel{display:none}
@media (max-width:1023px){
  /* Toggle button — style matches theme-toggle / linkedin exactly */
  .nav-search-toggle-mobile{
    display:inline-flex;align-items:center;justify-content:center;
    padding:6px 8px;border-radius:6px;
    color:var(--text-3);background:transparent;border:none;cursor:pointer;
    transition:background 0.15s,color 0.15s;
  }
  .nav-search-toggle-mobile:hover,.nav-search-toggle-mobile:active{background:var(--bg-3);color:var(--text)}
  .nav-search-toggle-mobile svg{width:16px;height:16px;display:block}

  /* Slide-down panel — under navbar */
  .ti-navbar-search-panel{
    position:fixed;top:0;left:0;right:0;z-index:1200;
    background:var(--bg);border-bottom:1px solid var(--border);
    padding:12px 16px 14px;
    transform:translateY(-100%);opacity:0;pointer-events:none;
    transition:transform 0.22s cubic-bezier(0.22,1,0.36,1),opacity 0.18s;
    box-shadow:0 4px 16px rgba(0,0,0,0.08);
  }
  .ti-navbar-search-panel.open{display:block;transform:translateY(0);opacity:1;pointer-events:auto}
  .ti-navbar-search-panel::before{
    content:'';position:absolute;top:0;left:0;right:0;height:1px;
    background:linear-gradient(90deg,transparent,var(--primary),var(--accent),transparent);
    opacity:0.5;pointer-events:none;
  }
  .ti-navbar-search-panel-inner{
    display:flex;align-items:center;gap:10px;
    background:var(--bg-3);border:1px solid var(--border);
    padding:10px 14px;border-radius:10px;
    transition:border-color 0.15s;
  }
  .ti-navbar-search-panel-inner:focus-within{border-color:var(--primary)}
  .ti-navbar-search-icon{width:14px;height:14px;color:var(--text-3);flex-shrink:0}
  .ti-navbar-search-input{
    flex:1;background:transparent;border:none;outline:none;
    font-family:inherit;font-size:15px;color:var(--text);min-width:0;padding:0;
  }
  .ti-navbar-search-input::placeholder{color:var(--text-3)}
  .ti-navbar-search-input::-webkit-search-cancel-button,
  .ti-navbar-search-input::-webkit-search-decoration{display:none}
  .ti-navbar-search-close{
    background:transparent;border:none;cursor:pointer;padding:2px;
    color:var(--text-3);display:flex;align-items:center;justify-content:center;
    transition:color 0.15s;
  }
  .ti-navbar-search-close:hover,.ti-navbar-search-close:active{color:var(--text)}
  .ti-navbar-search-close svg{width:16px;height:16px}

  /* Dropdown results — appears below input bar when typing */
  .ti-navbar-search-dropdown{
    margin-top:8px;background:var(--bg-card,var(--bg-2));border:1px solid var(--border);
    border-radius:10px;overflow:hidden;max-height:60vh;overflow-y:auto;
    opacity:0;pointer-events:none;transform:translateY(-4px);
    transition:opacity 0.15s,transform 0.15s;
  }
  .ti-navbar-search-dropdown.open{opacity:1;pointer-events:auto;transform:translateY(0)}
  .ti-navbar-search-dropdown:empty,.ti-navbar-search-dropdown:not(.open){padding:0;border:0;margin-top:0}
  .ti-navbar-search-result{
    display:flex;align-items:center;gap:12px;padding:10px 12px;
    text-decoration:none;color:inherit;
  }
  .ti-navbar-search-result + .ti-navbar-search-result{border-top:1px solid var(--border)}
  .ti-navbar-search-result:active{background:var(--bg-3)}
  .ti-navbar-search-result-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
  .ti-navbar-search-result-company{
    font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;
    color:var(--text-3);letter-spacing:0.08em;font-weight:500;line-height:1;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .ti-navbar-search-result-name{
    font-size:14px;font-weight:600;color:var(--text);line-height:1.3;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .ti-navbar-search-result-arrow{color:var(--text-3);font-size:16px;line-height:1;flex-shrink:0}
  .ti-navbar-search-empty{
    padding:16px;text-align:center;color:var(--text-3);font-size:13px;
  }
  .ti-navbar-search-empty b{color:var(--text);font-weight:500}

  /* HIDE the old mobile hero search — replaced by this navbar approach */
  .ti-mobile-hero-search{display:none!important}
}
/* HERO V2 — Desktop only. Mobile: base .hero CSS greift 1:1. */
.hero-v2-right { display: none; }

@media (min-width: 1024px) {
  .hero.hero-v2 {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    grid-template-areas:
      "eyebrow eyebrow"
      "h1      wall"
      "p       wall"
      "cta     wall"
      "stats   wall"
      "fact    wall";
    column-gap: 64px;
    row-gap: 0;
    align-items: stretch;
    padding: 24px 40px 40px;
    max-width: 1400px;
    text-align: center;
  }
  .hero.hero-v2 > .hero-eyebrow {
    grid-area: eyebrow;
    justify-self: center;
    justify-content: center;
    width: max-content;
    max-width: 100%;
    margin: 0 auto 24px;
  }
  .hero.hero-v2 > h1 {
    grid-area: h1;
    justify-self: center;
    text-align: center;
    margin: 0 0 20px;
    max-width: 620px;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.15;
  }
  .hero.hero-v2 > p {
    grid-area: p;
    justify-self: center;
    text-align: center;
    max-width: 560px;
    margin: 0 0 28px;
    font-size: 15px;
  }
  .hero.hero-v2 > .hero-cta-row {
    grid-area: cta;
    justify-self: center;
    justify-content: center;
    margin: 0 0 40px;
  }
  .hero.hero-v2 > .stats {
    grid-area: stats;
    justify-self: center;
    max-width: 620px;
    width: 100%;
    margin: 0 0 24px;
  }
  .hero.hero-v2 > .stats .stat {
    text-align: center;
  }
  .hero.hero-v2 > .stats .stat-num {
    font-size: clamp(28px, 2.5vw, 36px);
  }
  .hero.hero-v2 > .hero-fact {
    grid-area: fact;
    justify-self: center;
    width: 100%;
    max-width: 620px;
    margin: 0;
    padding: 20px 18px;
  }
  .hero.hero-v2 > .hero-fact .hero-fact-text {
    font-size: 13px;
    line-height: 1.55;
  }
  .hero.hero-v2 > .hero-v2-right {
    grid-area: wall;
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid var(--border);
    background: linear-gradient(135deg, rgba(139,92,246,0.03), rgba(16,185,129,0.02));
    height: 100%;
    min-height: 0;
    min-width: 0;
  }
}

.hero-v2-right::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center, transparent 25%, var(--bg) 85%);
  pointer-events: none;
  z-index: 5;
}
html[data-theme="dark"] .hero-v2-right::before {
  background: radial-gradient(ellipse at center, transparent 25%, #0a0a0b 85%);
}

.hero-mq-diagonal {
  position: absolute;
  inset: -100px -100px;
  transform: rotate(-14deg);
}
.hero-mq-row {
  display: flex;
  gap: 16px;
  white-space: nowrap;
  will-change: transform;
  margin-bottom: 16px;
}
.hero-mq-row-a { animation: hero-mq-scroll-left  60s linear infinite; }
.hero-mq-row-b { animation: hero-mq-scroll-right 55s linear infinite; }
.hero-mq-row-c { animation: hero-mq-scroll-left  65s linear infinite; }
.hero-mq-row-d { animation: hero-mq-scroll-right 58s linear infinite; }
.hero-mq-row-e { animation: hero-mq-scroll-left  62s linear infinite; }

@keyframes hero-mq-scroll-left {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
@keyframes hero-mq-scroll-right {
  from { transform: translateX(-50%); }
  to   { transform: translateX(0); }
}

.hero-bento {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
  width: 280px;
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 16px 18px;
  color: inherit;
  white-space: normal;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  text-align: left;
  cursor: default;
  user-select: none;
}
.hero-bento::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--primary), var(--accent), transparent);
  opacity: 0.4;
  pointer-events: none;
}
.hero-bento-company {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  color: var(--text-3);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  text-align: left;
}
.hero-bento-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
}
.hero-bento-meta {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  color: var(--text-2);
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
  text-align: left;
}
.hero-bento-sep { color: var(--text-3); opacity: 0.5; }
.hero-bento-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}
.hero-bento-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
}
.hero-bento-pill .pill-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: currentColor;
  display: inline-block;
  flex-shrink: 0;
}
.hero-bento-pill.pill-green {
  background: var(--accent-bg);
  color: var(--accent);
}
.hero-bento-pill.pill-closed {
  background: var(--closed-bg);
  color: var(--closed);
}
.hero-bento-gehalt {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 12px;
  font-weight:400;
  color: var(--text-2);
  white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
  .hero-mq-row { animation: none !important; }
}

/* MOBILE-HERO-WALL-v306 */
@media (max-width: 1023px) {
  .hero.hero-v2 { display: flex; flex-direction: column; align-items: center; padding: 12px 20px 32px; gap: 0; }
  .hero.hero-v2 > .hero-eyebrow    { order: 1; margin: 0 auto 18px; }
  .hero.hero-v2 > .hero-v2-right   { order: 2; margin: 0 -20px 20px; }
  .hero.hero-v2 > h1               { order: 3; }
  .hero.hero-v2 > p                { order: 4; }
  .hero.hero-v2 > .hero-cta-row    { order: 5; }
  .hero.hero-v2 > .stats           { order: 6; }
  .hero.hero-v2 > .hero-fact       { order: 7; }
  .hero.hero-v2 > .hero-v2-right { display: block; grid-area: auto; position: relative; width: calc(100% + 40px); max-width: none; height: 180px; border: none; border-radius: 0; background: transparent; overflow: hidden; justify-self: auto; }
  .hero.hero-v2 > .hero-v2-right::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 0%, transparent 55%, var(--bg) 100%); pointer-events: none; z-index: 5; }
  html[data-theme="dark"] .hero.hero-v2 > .hero-v2-right::before { background: linear-gradient(180deg, transparent 0%, transparent 55%, #0a0a0b 100%); }
  .hero-v2-right .hero-mq-diagonal { inset: -40px -40px; transform: rotate(-8deg); }
  .hero-v2-right .hero-mq-row { gap: 8px; margin-bottom: 8px; }
  .hero-v2-right .hero-bento { width: 170px; padding: 9px 11px; gap: 4px; border-radius: 8px; }
  .hero-v2-right .hero-bento-company { font-size: 8px; }
  .hero-v2-right .hero-bento-name    { font-size: 11px; line-height: 1.25; }
  .hero-v2-right .hero-bento-meta    { font-size: 9px; gap: 3px; }
  .hero-v2-right .hero-bento-bottom  { gap: 5px; margin-top: 2px; }
  .hero-v2-right .hero-bento-pill    { padding: 2px 7px; font-size: 9px; gap: 4px; }
  .hero-v2-right .hero-bento-pill .pill-dot { width: 4px; height: 4px; }
  .hero-v2-right .hero-bento-gehalt  { font-size: 9px; }
  .hero-v2-right .hero-mq-row-a { animation-duration: 45s; }
  .hero-v2-right .hero-mq-row-b { animation-duration: 40s; }
  .hero-v2-right .hero-mq-row-c { animation-duration: 48s; }
  .hero-v2-right .hero-mq-row-d { animation-duration: 42s; }
  .hero-v2-right .hero-mq-row-e { animation-duration: 46s; }
}
.nav-dropdown-item-badge{display:inline-flex;align-items:center;padding:0;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:9px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;background:transparent;color:var(--accent);line-height:1;margin-left:auto;margin-right:4px}.nav-dropdown-item{gap:8px}