
:root{
  --cream:#f6f4ef;--sand:#eeebe4;--dark:#151923;--deep:#101827;
  --blue:#123e66;--accent:#0d5f91;--muted:#5f6b7a;--border:rgba(0,0,0,.10)
}
*{box-sizing:border-box}
html,body{overflow-x:hidden;max-width:100%}
h2,h3,h4,h5,h6,p,span,a,li,blockquote{overflow-wrap:break-word;word-break:normal;hyphens:none}
h1{overflow-wrap:normal;word-break:normal;hyphens:none}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--dark);font-family:Inter,Arial,Helvetica,sans-serif}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.header{position:sticky;top:0;z-index:99;border-bottom:1px solid rgba(0,0,0,.10);background:rgba(246,244,239,.92);backdrop-filter:blur(14px)}
.nav{height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-size:18px;letter-spacing:-.02em}
.brand img{height:38px;width:auto;border-radius:3px;object-fit:contain}
.brand span{font-weight:300}.brand strong{font-weight:800}
.menu{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:600;color:#526071}
.menu a:hover{color:var(--accent)}
.nav-btn{display:inline-flex;border-radius:999px;background:var(--blue);color:white;padding:11px 20px;font-size:14px;font-weight:700}
.section{padding:92px 0}.sand{background:var(--sand)}
.center{text-align:center;margin-left:auto;margin-right:auto}.max-3xl{max-width:768px}
.kicker{font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.28em;color:var(--accent)}
.h2{font-size:clamp(38px,5vw,60px);line-height:1.05;letter-spacing:-.052em;font-weight:950;margin:16px 0 0;text-wrap:balance}
.lead{font-size:18px;line-height:1.65;color:var(--muted)}
.serif{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400}
.badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.10);border-radius:999px;padding:8px 16px;font-size:12px;text-transform:uppercase;letter-spacing:.20em;font-weight:800;backdrop-filter:blur(10px)}
.btn{display:inline-flex;align-items:center;gap:9px;border-radius:999px;padding:16px 32px;font-size:16px;font-weight:750}
.btn-white{background:#fff;color:var(--dark)}.btn-blue{background:var(--blue);color:#fff}.btn-outline{border:1px solid rgba(255,255,255,.32);color:#fff}.btn-outline-dark{border:1px solid var(--border);color:var(--dark);background:transparent}
.actions{margin-top:42px;display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.zc-hero{position:relative;overflow:hidden;color:white}
.zc-bg{position:absolute;inset:0}.zc-bg img{width:100%;height:100%;object-fit:cover}.zc-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(16,43,74,.86),rgba(16,24,39,.96))}
.zc-hero-inner{position:relative;z-index:1;padding:128px 24px 156px;max-width:1280px;margin:0 auto}
.zc-hero h1{max-width:1220px;margin:32px 0 0;font-size:clamp(40px,6.4vw,76px);line-height:.98;letter-spacing:-.055em;font-weight:950}
.zc-hero p{margin:32px 0 0;max-width:820px;font-size:20px;line-height:1.65;color:rgba(255,255,255,.86)}
.hero-cards{margin-top:58px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.hero-card{display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.10);border-radius:28px;padding:24px;backdrop-filter:blur(16px);transition:.2s ease;overflow:hidden}
.hero-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.16)}
.hero-card .tag{font-size:13px;text-transform:uppercase;letter-spacing:.18em;color:#b8eeff}
.hero-card h3{margin:12px 0 0;font-size:23px;line-height:1.15}.hero-card p{margin:12px 0 0;font-size:14px;line-height:1.6;color:rgba(255,255,255,.80)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.info-card{border:1px solid var(--border);background:#fff;border-radius:24px;padding:32px;box-shadow:0 14px 40px rgba(15,20,30,.06)}
.icon{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:900}
.info-card h3{font-size:22px;margin:24px 0 12px;line-height:1.2}.info-card p{color:var(--muted);line-height:1.65;margin:0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;justify-items:stretch}
.two>*{width:100%;margin:0;min-width:0}
.rounded-img{overflow:hidden;border-radius:28px}.rounded-img img{width:100%;height:100%;object-fit:cover}.grayscale img{filter:grayscale(100%)}
.promise{font-size:clamp(30px,4vw,40px);line-height:1.16;font-weight:900;letter-spacing:-.035em;margin:24px 0 0}
.small-note{margin-top:16px;font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:#667085}
.pillars{margin-top:40px;display:grid;gap:20px}.pillar{border-left:4px solid var(--accent);padding-left:20px}.pillar h3{font-size:18px;margin:0 0 5px}.pillar p{font-size:14px;line-height:1.6;color:#526071;margin:0}
.disciplines{margin-top:64px;display:grid;gap:32px}
.discipline{display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.06)}
.discipline:nth-child(even) .discipline-img{order:2}.discipline-img{min-height:380px}.discipline-img img{width:100%;height:100%;object-fit:cover}.discipline-copy{padding:48px;display:flex;flex-direction:column;justify-content:center}
.roman{font-size:48px;color:var(--accent);font-weight:950;line-height:1}.tag2{margin-top:16px;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#667085;font-weight:800}
.discipline-copy h3{font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-.04em;margin:8px 0 0}.discipline-copy p{font-size:17px;line-height:1.65;color:var(--muted);margin:16px 0 0}
.text-link{margin-top:28px;color:var(--accent);font-weight:850;display:inline-flex;gap:8px;align-items:center}
.dark-photo{position:relative;overflow:hidden;color:white;padding:128px 0}.dark-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,24,39,.96),rgba(18,62,102,.66))}
.dark-photo .wrap{position:relative;z-index:1}.dark-photo .box{max-width:672px}.dark-photo h2{font-size:clamp(38px,5vw,60px);line-height:1.08;letter-spacing:-.05em;margin:24px 0 0}.dark-photo p{font-size:18px;line-height:1.7;color:rgba(255,255,255,.82);margin-top:24px}
.testimonial-grid{margin-top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.quote{background:#fff;border:1px solid var(--border);border-radius:28px;padding:32px;box-shadow:0 12px 32px rgba(0,0,0,.05)}.quote blockquote{font-size:18px;line-height:1.65;margin:0}.quote figcaption{margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.quote strong{display:block}.quote span{font-size:14px;color:var(--muted)}
.stats{background:var(--dark);color:white}.stats-grid{margin-top:64px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.1);border-radius:28px;overflow:hidden}.stat{padding:40px;text-align:center;background:rgba(255,255,255,.03)}.stat strong{display:block;font-size:56px;letter-spacing:-.05em}.stat span{display:block;margin-top:12px;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.62)}
.cta-card{position:relative;overflow:hidden;border-radius:28px;color:white;text-align:center;min-height:420px;display:flex;align-items:center;justify-content:center}.cta-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(18,62,102,.92),rgba(52,43,109,.86))}
.cta-card .wrap-in{position:relative;z-index:1;padding:64px 48px}.cta-card h2{max-width:780px;margin:24px auto 0;font-size:clamp(36px,5vw,60px);line-height:1.05;letter-spacing:-.05em}.cta-card p{max-width:600px;margin:24px auto 0;font-size:18px;line-height:1.65;color:rgba(255,255,255,.86)}
.page-hero{position:relative;overflow:hidden;color:white;padding:132px 0}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(16,24,39,.92),rgba(18,62,102,.76))}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{max-width:1000px;font-size:clamp(44px,6vw,76px);line-height:.96;letter-spacing:-.06em;margin:24px 0 0}.page-hero p{max-width:820px;font-size:20px;line-height:1.65;color:rgba(255,255,255,.86);margin-top:24px}
.story-card,.contact-card{background:#fff;border:1px solid var(--border);border-radius:28px;padding:44px;box-shadow:0 12px 32px rgba(0,0,0,.05)}.story-card p,.contact-card p{font-size:18px;line-height:1.7;color:var(--muted)}
.list{display:grid;gap:16px;margin-top:32px}.list-item{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px}.list-item strong{display:block;margin-bottom:8px}.list-item span{color:var(--muted);line-height:1.6}
.senior-trust-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.senior-portrait{border-radius:34px;overflow:hidden;box-shadow:0 24px 70px rgba(16,24,39,.18);background:#111827}.senior-portrait img{width:100%;height:620px;object-fit:cover;object-position:center top}.trust-points{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}.trust-point{background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:20px;padding:20px}.trust-point strong{display:block;margin-bottom:8px}.trust-point span{color:#5f6b7a;line-height:1.55}
.funding-card{position:relative;overflow:hidden;border-radius:34px;background:#fff;border:1px solid rgba(0,0,0,.10);box-shadow:0 18px 56px rgba(16,24,39,.08);padding:56px}.funding-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:46px;align-items:center}.funding-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.funding-badge{border:1px solid rgba(18,62,102,.18);background:#f6f9fb;color:#123e66;border-radius:999px;padding:10px 16px;font-weight:700;font-size:14px}.funding-note{background:#123e66;color:#fff;border-radius:28px;padding:34px}.funding-note h3{margin:0;font-size:28px;line-height:1.15}.funding-note p{margin-top:18px;color:rgba(255,255,255,.82);line-height:1.7}
.footer{background:var(--deep);color:rgba(255,255,255,.75);padding:44px 0}.footer .wrap{display:flex;gap:24px;justify-content:space-between;flex-wrap:wrap}
@media(max-width:1000px){.menu{display:none}.hero-cards,.testimonial-grid,.stats-grid{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr}.two,.discipline,.senior-trust-card,.funding-inner{grid-template-columns:1fr}.discipline:nth-child(even) .discipline-img{order:0}.senior-portrait img{height:auto}.trust-points{grid-template-columns:1fr}}
.tp-split{display:none}
@media(max-width:700px){.wrap{padding:0 20px}.zc-hero-inner{padding:88px 20px}.zc-hero h1{font-size:44px}.hero-cards,.grid-3,.testimonial-grid,.stats-grid{grid-template-columns:1fr}.section{padding:72px 0}.discipline-copy{padding:32px}.nav-btn{display:none}.funding-card{padding:34px}.tp-whole{display:none}.tp-split{display:inline}}

/* Legal Newsletter Contact Update */
.newsletter-card,.legal-content,.contact-location{background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:28px;padding:36px;box-shadow:0 12px 32px rgba(0,0,0,.05)}
.newsletter-form{display:grid;gap:16px;margin-top:26px}
.newsletter-form input[type=email]{width:100%;border:1px solid rgba(0,0,0,.15);border-radius:999px;padding:16px 20px;font-size:16px}
.newsletter-consent{display:flex;gap:12px;align-items:flex-start;color:#5f6b7a;line-height:1.55;font-size:15px}
.newsletter-consent input{margin-top:4px}
.contact-locations{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.contact-location h3{font-size:26px;margin:0 0 16px}
.contact-location p,.legal-content p,.legal-content li{color:#5f6b7a;line-height:1.75}
.contact-location .address-line{margin:0 0 4px;line-height:1.5}
.contact-location .address-line a{color:#5f6b7a}
.contact-location .address-line a:hover{color:var(--accent)}
.legal-content h2{font-size:28px;margin-top:32px}
.legal-content h2:first-child{margin-top:0}
.legal-content ul{padding-left:22px}
@media(max-width:900px){.contact-locations{grid-template-columns:1fr}.newsletter-card,.legal-content,.contact-location{padding:28px}}

/* Final Logo Override */
.brand{
  display:flex !important;
  align-items:center !important;
  gap:0 !important;
  font-size:0 !important;
  line-height:0 !important;
}
.brand span,
.brand strong{
  display:none !important;
}
.brand img,
.zc-header-logo,
.custom-logo{
  display:block !important;
  height:52px !important;
  width:auto !important;
  max-height:52px !important;
  object-fit:contain !important;
}
.custom-logo-link{
  display:block !important;
}

/* Unterseiten-Update */
.overview-list{display:grid;gap:14px;margin-top:28px}
.overview-item{background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:18px;padding:18px}
.overview-item strong{display:block;margin-bottom:6px}
.overview-item span{color:#5f6b7a;line-height:1.55}
.success-story{background:#101827;color:#fff;border-radius:30px;padding:44px;box-shadow:0 18px 56px rgba(16,24,39,.18)}
.success-story .kicker{color:rgba(255,255,255,.62)}
.success-story h2{color:#fff}
.success-story p{color:rgba(255,255,255,.82);line-height:1.75}
.success-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.success-metric{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px}
.success-metric strong{display:block;font-size:24px}
.success-metric span{display:block;margin-top:8px;color:rgba(255,255,255,.7);font-size:14px;line-height:1.45}
@media(max-width:900px){.success-metrics{grid-template-columns:1fr}}

/* ── v6 Refinements ─────────────────────────── */
.hero-card .link {
  display: inline-block;
  margin-top: auto;
  padding-top: 18px;
  font-size: 13px;
  font-weight: 700;
  color: rgba(255,255,255,.80);
  letter-spacing: .04em;
}
.hero-card { text-decoration: none; color: #fff; }

/* Use Case + Success Story layout polish */
.story-card p + p { margin-top: 14px; }
.story-card h2 { font-size: clamp(26px,3.2vw,38px); }

.success-story {
  background: #101827;
  color: #fff;
  border-radius: 30px;
  padding: 44px;
  box-shadow: 0 18px 56px rgba(16,24,39,.18);
  display: flex;
  flex-direction: column;
}
.success-story .kicker { color: rgba(255,255,255,.55); }
.success-story h2 { color: #fff; font-size: clamp(24px,3vw,36px); }
.success-story > p {
  color: rgba(255,255,255,.82);
  line-height: 1.75;
  font-size: 17px;
  margin-top: 18px;
  flex: 1;
}
.success-metrics {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 14px;
  margin-top: 32px;
}
.success-metric {
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 18px;
  padding: 18px;
}
.success-metric strong {
  display: block;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -.02em;
}
.success-metric span {
  display: block;
  margin-top: 6px;
  color: rgba(255,255,255,.68);
  font-size: 13px;
  line-height: 1.45;
}

/* Ensure two-column stacks on mobile */
@media(max-width:900px) {
  .success-metrics { grid-template-columns: 1fr; }
  .two > .success-story { margin-top: 0; }
}

/* ── v8: Success-Stories Grid (mehrere Stories pro Seite) ── */
.stories-head{margin-bottom:8px}
.stories-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
.story-tile{background:#101827;color:#fff;border-radius:28px;padding:38px;display:flex;flex-direction:column;box-shadow:0 14px 44px rgba(16,24,39,.14)}
.story-tile .story-tag{display:inline-flex;align-self:flex-start;font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#b8d9ff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:6px 14px}
.story-tile h3{margin:18px 0 0;font-size:24px;line-height:1.2;letter-spacing:-.02em}
.story-tile p{margin:14px 0 0;color:rgba(255,255,255,.80);line-height:1.7;font-size:15px;flex:1}
.story-tile .story-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}
.story-tile .story-metric{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);border-radius:16px;padding:14px}
.story-tile .story-metric strong{display:block;font-size:19px;font-weight:900;letter-spacing:-.02em}
.story-tile .story-metric span{display:block;margin-top:5px;color:rgba(255,255,255,.66);font-size:12px;line-height:1.4}
.story-tile.featured{grid-column:1 / -1;background:linear-gradient(135deg,#101827 0%,#123e66 100%)}
.story-tile.featured h3{font-size:clamp(26px,3vw,36px)}
.story-tile.featured .story-metrics{grid-template-columns:repeat(3,1fr);max-width:720px}
@media(max-width:900px){
  .stories-grid{grid-template-columns:1fr}
  .story-tile .story-metrics{grid-template-columns:1fr}
  .story-tile.featured .story-metrics{grid-template-columns:1fr}
}

/* ── v8: Sicht-Seite Thesen ── */
.thesis-list{display:grid;gap:20px;margin-top:48px}
.thesis{background:#fff;border:1px solid var(--border);border-radius:24px;padding:36px;display:grid;grid-template-columns:72px 1fr;gap:28px;align-items:start;box-shadow:0 12px 32px rgba(0,0,0,.05)}
.thesis-num{font-size:44px;font-weight:950;color:var(--accent);line-height:1;letter-spacing:-.04em}
.thesis h3{margin:0 0 10px;font-size:22px;line-height:1.25}
.thesis p{margin:0;color:var(--muted);line-height:1.7}
.thesis p+p{margin-top:12px}
@media(max-width:700px){.thesis{grid-template-columns:1fr;gap:12px}}

/* ── v9: HubSpot-Embeds (Newsletter-Formular, Meeting-Buchung) ── */
.hubspot-embed{margin-top:40px;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 12px 32px rgba(0,0,0,.06)}
.hubspot-embed iframe{display:block;width:100%;border:0}
.hubspot-embed--form iframe{min-height:480px}
.hubspot-embed--meeting{max-width:920px;margin-left:auto;margin-right:auto}
@media(max-width:700px){
  .hubspot-embed--form iframe{min-height:620px}
}

/* ── v10: Prozess-Diagramm (ersetzt Text-Pillars) ── */
.process-diagram{margin-top:52px;display:flex;align-items:flex-start;justify-content:center;gap:8px}
.process-step{flex:0 1 200px;text-align:center}
.process-icon{width:76px;height:76px;border-radius:50%;background:#fff;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;box-shadow:0 10px 26px rgba(0,0,0,.06)}
.process-icon svg{width:32px;height:32px;stroke:var(--accent);color:var(--accent)}
.process-step h3{font-size:17px;margin:0 0 6px;letter-spacing:-.01em}
.process-step p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}
.process-arrow{flex:0 0 auto;margin-top:30px}
.process-arrow svg{width:36px;height:16px;stroke:var(--border)}
@media(max-width:700px){
  .process-diagram{flex-direction:column;align-items:center;gap:4px}
  .process-arrow{transform:rotate(90deg);margin:2px 0}
}

/* ── v10: Trust-Band (Stats + kompakte Testimonials, ersetzt lange Zitat-Cards) ── */
.trust-band{background:var(--dark);color:#fff}
.mini-quotes{margin-top:48px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.mini-quote{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:22px;display:flex;gap:14px;align-items:flex-start}
.mini-quote .avatar{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.mini-quote p{margin:0;font-size:14px;line-height:1.55;color:rgba(255,255,255,.90)}
.mini-quote strong{display:block;margin-top:10px;font-size:13px;color:#fff}
.mini-quote span{display:block;font-size:12px;color:rgba(255,255,255,.55)}

/* ── v10: Förderung als kompakter Strip statt zweispaltiger Text-Card ── */
.funding-strip{background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:28px;box-shadow:0 14px 40px rgba(16,24,39,.06);padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.funding-strip .funding-badges{margin-top:18px}

@media(max-width:900px){
  .mini-quotes{grid-template-columns:1fr}
  .funding-strip{flex-direction:column;align-items:flex-start}
}

/* ══ v11 ══════════════════════════════════════════════ */

/* FIX: .image-bg war nie definiert — Unterseiten-Heros zeigten das Bild
   als Block statt als Hintergrund. Jetzt identisches Verhalten wie .zc-bg. */
.image-bg{position:absolute;inset:0;z-index:0}
.image-bg img{width:100%;height:100%;object-fit:cover}
.page-hero .image-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(16,43,74,.86),rgba(16,24,39,.96))}
.page-hero:after{display:none} /* alter Gradient obsolet, liegt jetzt im .image-bg */
.cta-card .image-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(18,62,102,.92),rgba(52,43,109,.86))}
.cta-card:after{display:none}

/* Burger-Menü (iPad/Mobile): CSS-only via Checkbox */
.nav-toggle{display:none}
.nav-burger{display:none;cursor:pointer;width:44px;height:44px;border:1px solid var(--border);border-radius:10px;align-items:center;justify-content:center;flex-shrink:0}
.nav-burger svg{width:22px;height:22px;stroke:var(--dark)}
@media(max-width:1000px){
  .nav-burger{display:flex}
  .menu{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:rgba(246,244,239,.98);border-bottom:1px solid var(--border);padding:8px 0;backdrop-filter:blur(14px)}
  .menu a{padding:14px 24px;border-bottom:1px solid rgba(0,0,0,.05)}
  .nav-toggle:checked ~ .menu{display:flex}
  .nav-btn{display:inline-flex}
}
@media(max-width:700px){.nav-btn{display:none}}

/* Disziplinen-Bildkarten (Homepage) */
.disciplines-grid{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.discipline-card{background:#fff;border:1px solid var(--border);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 32px rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease}
.discipline-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(0,0,0,.10)}
.discipline-card .card-img{aspect-ratio:16/10;overflow:hidden}
.discipline-card .card-img img{width:100%;height:100%;object-fit:cover}
.discipline-card .card-body{padding:26px 28px 30px;display:flex;flex-direction:column;flex:1}
.discipline-card .num{font-size:26px;font-weight:900;color:var(--accent);letter-spacing:-.02em}
.discipline-card h3{margin:10px 0 8px;font-size:20px;letter-spacing:-.015em}
.discipline-card p{margin:0 0 18px;font-size:14px;line-height:1.6;color:var(--muted);flex:1}
.discipline-card .link{font-weight:800;font-size:14px;color:var(--accent)}
@media(max-width:1000px){.disciplines-grid{grid-template-columns:1fr}}
@media(max-width:700px){.disciplines-grid{grid-template-columns:1fr}}

/* Kontakt: Maps, Offices, Formulare */
.maps-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-top:40px}
.map-card{background:#fff;border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.05)}
.map-card iframe{display:block;width:100%;height:320px;border:0}
.map-card.office-photo img{display:block;width:100%;height:320px;object-fit:cover}
.map-card .map-label{padding:16px 22px;font-weight:800;font-size:15px}
.offices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.office{background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px}
.office h4{margin:0 0 8px;font-size:16px}
.office p{margin:0;font-size:14px;color:var(--muted);line-height:1.7}
.office a{color:var(--accent);font-weight:700}
@media(max-width:900px){.maps-grid,.offices-grid{grid-template-columns:1fr}}

/* Formulare (Kontakt + Karriere) */
.zc-form{background:#fff;border:1px solid var(--border);border-radius:26px;padding:36px;box-shadow:0 14px 40px rgba(16,24,39,.06)}
.zc-form h3{margin:0 0 24px;font-size:24px;letter-spacing:-.02em}
.zc-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.zc-form .form-field{display:flex;flex-direction:column;margin-bottom:16px}
.zc-form .form-row .form-field{margin-bottom:0}
.zc-form label{font-size:14px;font-weight:700;margin-bottom:7px}
.zc-form label .req{color:var(--accent)}
.zc-form input[type=text],.zc-form input[type=email],.zc-form input[type=tel],.zc-form select,.zc-form textarea{border:1px solid var(--border);border-radius:12px;padding:13px 14px;font-family:inherit;font-size:15px;background:#fbfbfa;outline:none;width:100%}
.zc-form input:focus,.zc-form select:focus,.zc-form textarea:focus{border-color:var(--accent)}
.zc-form textarea{resize:vertical;min-height:130px}
.zc-form input[type=file]{font-size:14px}
.zc-form .form-note{font-size:12.5px;color:var(--muted);margin-top:14px}
.zc-form .btn{border:0;cursor:pointer;font-family:inherit;font-size:15px}
.form-feedback{border-radius:14px;padding:14px 18px;margin-bottom:20px;font-weight:700;font-size:14px}
.form-feedback.ok{background:#eaf6ee;color:#1b6e3c;border:1px solid #bfe3cc}
.form-feedback.err{background:#fdeeee;color:#9c2b2b;border:1px solid #f0c8c8}
@media(max-width:700px){.zc-form .form-row{grid-template-columns:1fr}.zc-form{padding:26px}}

/* Karriere: Stellen-Cards */
.job-card{background:#fff;border:1px solid var(--border);border-radius:26px;padding:38px;box-shadow:0 12px 32px rgba(0,0,0,.05);margin-top:28px}
.job-card h3{margin:0;font-size:24px;letter-spacing:-.02em}
.job-meta{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 20px}
.job-meta span{border:1px solid rgba(18,62,102,.18);background:#f6f9fb;color:#123e66;border-radius:999px;padding:7px 14px;font-weight:700;font-size:13px}
.job-card h4{margin:22px 0 10px;font-size:16px}
.job-card ul{margin:0;padding-left:20px;color:var(--muted);line-height:1.75;font-size:14.5px}
.job-card ul li{margin-bottom:4px}

/* Footer v11 */
.footer{background:var(--deep);color:rgba(255,255,255,.78);margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:44px;padding:64px 0 44px}
.footer-brand img.footer-logo{height:40px;width:auto;margin-bottom:18px;filter:brightness(0) invert(1)}
.footer-brand p{margin:0;font-size:14.5px;line-height:1.75;max-width:340px;color:rgba(255,255,255,.72)}
.footer h5{margin:0 0 16px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.footer-col a{display:block;font-size:14.5px;line-height:2.2;color:rgba(255,255,255,.78)}
.footer-col a:hover{color:#fff}
.footer-social{display:flex;align-items:center;gap:14px;margin-top:22px}
.footer-social a{display:inline-flex;width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);align-items:center;justify-content:center}
.footer-social a:hover{background:rgba(255,255,255,.16)}
.footer-social svg{width:20px;height:20px;fill:#fff}
.footer-seal{display:flex;align-items:center;gap:14px;margin-top:26px}
.footer-seal img{height:64px;width:auto;border-radius:8px;background:#fff;padding:4px}
.footer-seal span{font-size:12.5px;line-height:1.55;color:rgba(255,255,255,.60);max-width:240px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.10);padding:22px 0;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;font-size:13px;color:rgba(255,255,255,.55)}
.footer-bottom .legal-links a{color:rgba(255,255,255,.55);margin-left:14px}
.footer-bottom .legal-links a:first-child{margin-left:0}
.footer-bottom .legal-links a:hover{color:#fff}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr;gap:32px}}

/* 404 */
.error-404{min-height:60vh;display:flex;align-items:center}
.error-404 .code{font-size:clamp(90px,14vw,160px);font-weight:950;letter-spacing:-.06em;line-height:1;color:var(--blue)}

/* FoW: Remote-Faktoren + Digital: KI-Checkliste */
.check-list{margin:36px 0 0;padding:0;list-style:none;display:grid;gap:14px;max-width:860px}
.check-list li{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px 22px;font-size:15.5px;line-height:1.6}
.check-list li svg{flex-shrink:0;width:22px;height:22px;stroke:var(--accent);margin-top:2px}

/* ── v12: Manifesto-Strip (geliehene Autorität / Haltung als Verkaufsargument) ── */
.manifesto-strip{background:var(--blue);color:#fff}
.manifesto-inner{max-width:760px;margin:0 auto;text-align:center}
.manifesto-inner blockquote{margin:18px 0 0;font-size:clamp(26px,3.4vw,42px);font-weight:900;letter-spacing:-.03em;line-height:1.2}
.manifesto-inner .manifesto-sub{margin:22px auto 0;max-width:560px;font-size:15px;line-height:1.7;color:rgba(255,255,255,.78)}
.manifesto-inner .btn{margin-top:30px}

/* ── v12.3: Konsistenz-Slogan auf Unterseiten-Heros ── */
.hero-tagline{margin-top:16px;font-size:13px;font-weight:800;letter-spacing:.04em;color:rgba(255,255,255,.85)}

/* ── v12.5: Zertifizierungs-Leiste (Text-Badges, keine Logos —
   vermeidet Markenrichtlinien-Risiko ohne bestätigte Gültigkeitsprüfung) ── */
.cert-strip{margin-top:40px;text-align:center}
.cert-strip-label{font-size:13px;font-weight:700;color:var(--muted);margin-bottom:18px}
.cert-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px}
.cert-logos img{height:64px;width:auto;background:#fff;border:1px solid var(--border);border-radius:14px;padding:8px 14px;box-shadow:0 6px 16px rgba(0,0,0,.04)}

/* ── v12.7: Erfahrungshintergrund-Liste (Text, keine Logos, als Berater-
   Karrierehistorie gerahmt — nicht als Firmenkundenreferenz) ── */
.cert-experience-list{margin-top:10px;font-size:13.5px;line-height:1.9;color:var(--muted);max-width:820px;margin-left:auto;margin-right:auto}

/* ══════════════════════════════════════════════════════
   v12.8: Barrierefreiheit (WCAG 2.1 AA)
══════════════════════════════════════════════════════ */

/* Skip-Link: unsichtbar bis Tastatur-Fokus, dann klar sichtbar oben links */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:10000;background:var(--dark);color:#fff;padding:14px 22px;border-radius:0 0 10px 0;font-weight:800;text-decoration:none}
.skip-link:focus{left:0;top:0;width:auto;height:auto;overflow:visible}

/* Sichtbarer, konsistenter Fokus-Ring auf allen interaktiven Elementen —
   ersetzt/ergänzt das reine outline:none bei Formularfeldern */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.hero-card:focus-visible,
.discipline-card:focus-visible,
.nav-burger:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 2px;
  border-radius: 4px;
}
.zc-form input:focus-visible,
.zc-form select:focus-visible,
.zc-form textarea:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 1px;
  border-color: var(--accent);
}

/* Checkbox-basiertes Burger-Menü bleibt per Tastatur bedienbar: Label
   bekommt sichtbaren Fokus, wenn per Tab angesteuert */
label[for="zc-nav-toggle"]:focus-within,
.nav-burger:has(+ input:focus-visible) { outline: 3px solid var(--accent); outline-offset: 2px; }

/* Reduzierte Bewegung respektieren (vestibuläre Störungen) */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* ── v13: Individuelle Prozessdiagramme auf den Geschäftsfeldseiten ── */
.diagram-frame{margin:44px auto 0;max-width:680px;background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px 32px 24px;box-shadow:0 12px 32px rgba(0,0,0,.05)}
.diagram-frame svg{width:100%;height:auto;display:block}
.diagram-frame .diagram-caption{margin:18px 0 0;font-size:13.5px;line-height:1.65;color:var(--muted);text-align:center}

/* ── v13.2: USP-Band — beantwortet in Sekunden: Problem, Warum wir, Nutzen ── */
.usp-box{background:#fff;border-left:4px solid var(--accent);border-radius:0 20px 20px 0;box-shadow:0 12px 32px rgba(0,0,0,.05);padding:28px 36px;max-width:820px;margin:0 auto}
.usp-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.usp-statement{font-size:18px;line-height:1.55;font-weight:600;color:var(--dark);margin:0}
@media(max-width:700px){.usp-box{padding:22px 24px}.usp-statement{font-size:16px}}

/* ── Nach-oben-Button: schwebend, immer unten rechts sichtbar ── */
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:500;width:52px;height:52px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(16,24,39,.28);transition:transform .2s ease,background .2s ease}
.back-to-top svg{width:22px;height:22px;stroke:#fff}
.back-to-top:hover{background:var(--accent);transform:translateY(-3px)}
@media(max-width:700px){.back-to-top{right:16px;bottom:16px;width:46px;height:46px}}

/* ── BAFA-Zertifizierungslogos in der Förderprogramme-Sektion ── */
.funding-cert-logos{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.funding-cert-logos img{height:56px;width:auto;background:#fff;border:1px solid var(--border);border-radius:12px;padding:6px 12px}
