/* * Inter Font by Rasmus Andersson (https://github.com/rsms/inter)
 * Licensed under SIL Open Font License 1.1 (http://scripts.sil.org/OFL)
 */
@font-face { font-family: "Inter"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("../fonts/inter/InterVariable.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 100 900; font-display: swap; src: url("../fonts/inter/InterVariable-Italic.woff2") format("woff2"); }
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: "Inter", sans-serif; font-size: 1.1rem; line-height: 1.6; color: #111111; background-color: #ffffff; -webkit-font-smoothing: antialiased; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 2.5rem; }
/* Gezielte Breitenoptimierung für die Vertiefungsseiten 4, 5 & 8 */
body:has(.kaskade-zeile) .container, body:has(.hebel-card) .container, body:has(.terminal-item) .container, body:has(.sollbruch-grid) .container { max-width: 950px; }
.nav-back { padding: 3rem 0 0 0; }
.link-zurueck { font-size: 0.95rem; font-weight: 600; color: #666666; text-decoration: none; transition: color 0.2s; }
.link-zurueck:hover { color: #000000; }
:root {
    --black: #0a0a0a;
    --white: #ffffff;
    --gray-100: #f5f5f5;
    --gray-200: #e8e8e8;
    --gray-400: #757575;
    --gray-600: #555555;
    --max: 1088px;
    --pad: clamp(20px, 5vw, 60px);
    --barH: 72px;
    --line: rgba(36,18,51,.12);
    --lift: 0 14px 34px rgba(0,0,0,.12);
    --ring: 3px solid rgba(0,0,0,.85);
    --tFast: 120ms;
    --tMed: 260ms;
    --accent: #301945;
    --accent-w: #ffffff;
    --accent-t: #2B2B2B;
    --accentHover: rgba(0,0,0,0.28);
    --accentTint: rgba(48,25,69,.08);
}
.hbar {position: sticky; top: 0; z-index: 1000;background: #fff; border-bottom: 1px solid var(--line);}
.wrap { width: min(var(--max), calc(100% - 32px)); margin-inline: auto; }
.hrow {height: var(--barH);display: flex; align-items: center; justify-content: space-between; gap: 16px;}
.mark {display: inline-flex; align-items: center; gap: 10px;text-decoration: none; color: inherit;font-size: 14px; font-weight: 500; letter-spacing: -0.3px; white-space: nowrap;}
.mark__sub { color: var(--gray-400); font-weight: 400; font-size: 13px; }
.mark__img{ display:block; height:34px; width:auto; }
.trg {display: none; width: 44px; height: 44px;border-radius: 12px; border: 0px solid var(--line);background: #fff; cursor: pointer;align-items: center; justify-content: center;}
.trg:focus-visible { outline: var(--ring); outline-offset: 2px; }
.trg__ico { position: relative; display: block; width: 18px; height: 2px; background: var(--accent); margin: 0 auto; }
.trg__ico::before, .trg__ico::after { content: ""; position: absolute; right: 0; width: 12px; height: 2px; background: var(--accent); }
.trg__ico::before { top: -6px; }
.trg__ico::after { top: 6px; }
.mnav { display: block; }
.shade { display: none; }
.drawer { display: block; }
.drawer__top { display: none; }
.mlist { display: flex; align-items: center; gap: 6px; margin: 0; padding: 0; list-style: none; }
.mitem { position: relative; }
.mlink {display: inline-flex; align-items: center; gap: 10px;padding: 10px 12px; border-radius: 6px;text-decoration: none; color: var(--accent);line-height: 1.2; font-size: 0.875rem;background: transparent; border: 1px solid transparent; cursor: pointer;transition: background var(--tFast) ease;}
.mlink:hover { background: rgba(0,0,0,.05); }
.mlink:focus-visible { outline: var(--ring); outline-offset: 2px; background: var(--accentTint); }
.mitem--cta .mlink--cta {background: var(--black); color: #fff;border-color: transparent; padding: 9px 16px;}
.mitem--cta .mlink--cta:hover { background: #333; }
.caret {width: 5px; height: 5px; display: inline-block;border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;transform: rotate(45deg); margin-top: -2px; opacity: .65;}
.mitem--drop { position: relative; display: flex; }
.mitem--drop::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 20px; }
.milk-1 { border-radius: 10px 0 0 10px; padding-right: 0; }
.milk-2 { border-radius: 0 10px 10px 0; }
.drop {position: absolute; top: calc(100% + 12px); left: 0;min-width: 220px; padding: 8px; margin: 0; list-style: none;background: #fff; border: 1px solid var(--line); border-radius: 14px;box-shadow: var(--lift);opacity: 0; visibility: hidden; transform: translateY(-4px);transition: opacity var(--tFast) ease, transform var(--tFast) ease, visibility 0s linear var(--tFast);pointer-events: none; z-index: 10;}
.slink {display: block; padding: 10px 10px; border-radius: 10px;text-decoration: none; color: var(--accent);line-height: 1.25; font-size: 0.875rem;}
.slink:hover { background: rgba(0,0,0,.05); }
.slink:focus-visible { outline: var(--ring); outline-offset: 2px; background: rgba(0,0,0,.05); }
.mitem--drop:hover > .drop,
.mitem--drop:focus-within > .drop,
.mitem--drop.is-sub-open > .drop {opacity: 1; visibility: visible; transform: translateY(0);transition: opacity var(--tFast) ease, transform var(--tFast) ease;pointer-events: auto;}
.mitem--drop:hover > .mlink,
.mitem--drop:hover > .milk-2,
.mitem--drop:focus-within > .mlink,
.mitem--drop:focus-within > .milk-2 {background: rgba(0,0,0,.05);}
.mitem--drop::after {height: 20px;}
@media (max-width: 979px) {.trg { display: inline-flex; }.mnav { position: fixed; inset: 0; z-index: 1100; pointer-events: none; }.mnav.is-open { pointer-events: auto; }.shade {  display: block; position: absolute; inset: 0;  background: rgba(0,0,0,.45); opacity: 0;  transition: opacity var(--tMed) ease; pointer-events: none;}.mnav.is-open .shade { opacity: 1; pointer-events: auto; }.drawer {position: fixed; top: 0; right: 0; bottom: 0;width: min(420px, 100%); background: #fff;border-left: 1px solid var(--line);transform: translateX(100%);transition: transform var(--tMed) ease;display: flex; flex-direction: column;min-height: 0; max-height: 100dvh;will-change: transform; overscroll-behavior: contain;  }.mnav.is-open .drawer { transform: translateX(0); }.drawer__top {display: flex; align-items: center; justify-content: space-between;height: var(--barH); flex: 0 0 var(--barH);padding: 0 16px; border-bottom: 1px solid var(--line);}.drawer__tag { font-size: 0.875rem; letter-spacing: .02em; text-transform: uppercase; opacity: .75; }.xbtn {width: 44px; height: 44px; border-radius: 12px;border: 1px solid var(--line); background: #fff; cursor: pointer;display: flex; align-items: center; justify-content: center;  }.xbtn:focus-visible { outline: var(--ring); outline-offset: 2px; }.xbtn__ico { position: relative; display: block; width: 18px; height: 18px; margin: 0 auto; }.xbtn__ico::before, .xbtn__ico::after {content: ""; position: absolute; left: 0; right: 0; top: 8px;height: 2px; background: var(--accent);  }.xbtn__ico::before { transform: rotate(45deg); }.xbtn__ico::after { transform: rotate(-45deg); }.mlist {flex-direction: column; align-items: stretch;gap: 6px; padding: 14px 16px 18px;flex: 1 1 auto; min-height: 0;overflow-y: auto; overflow-x: hidden;-webkit-overflow-scrolling: touch; overscroll-behavior: contain;  }.mitem { border-radius: 12px; }.mitem > .mlink { justify-content: space-between; padding: 12px 12px; border-radius: inherit; border: 1px solid transparent; }.mitem > button.mlink { border-radius: inherit; width: 100%; }.mitem > a.mlink { display: flex; }.mitem > .mlink:focus-visible { outline: none; border-color: rgba(0,0,0,.28); background: rgba(0,0,0,.05); }.mitem--drop { display: flex; width: 100%; flex-wrap: wrap; } .milk-1 { width: 100%; border-radius: 10px 10px 10px 10px !important; }.milk-2 { width: 40% !important; text-align: end; align-self: baseline; display: block; border-radius: 10px 10px 10px 10px !important; }.drop {position: static !important; min-width: 0;box-shadow: none; border: 0; border-radius: 0;padding: 0 0 0 10px; margin-top: 0px;opacity: 1; visibility: visible; transform: none;transition: none; pointer-events: auto;display: none; width: 95%;  }.mitem--drop.is-sub-open > .drop { display: block; }.mitem--drop::after { display: none; }.mitem--cta .mlink--cta { justify-content: center; text-align: center; border: 1px solid rgba(0,0,0,0.18); }.mitem--drop {position: relative;  }.mitem--drop > .milk-2 {position: absolute;inset: 0;width: 100%;cursor: pointer;width: 100% !important;  }
}
.outer { width: 100%; }
.inner { max-width: var(--max); margin: 0 auto; padding-left: var(--pad); padding-right: var(--pad); }
.hero { padding: clamp(60px,10vw,120px) 0 clamp(48px,8vw,96px); }
.hero-danke { font-size: 11px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gray-400); margin-bottom: clamp(14px,2vw,24px); }
.hero-eyebrow { font-size: clamp(13px,2vw,16px); font-weight: 300; color: var(--gray-400); margin-bottom: clamp(32px,6vw,64px); letter-spacing: -0.2px; line-height: 1.5; max-width: 620px; }
.hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px,6vw,80px); align-items: start; }
@media(max-width:720px){ .hero-grid{ grid-template-columns:1fr; gap:36px; } }
.hero-h1 { font-size: clamp(32px,6vw,52px); font-weight: 500; line-height: 1.1; letter-spacing: clamp(-1px,-0.03em,-3px); color: var(--black); }
.hero-h2 { font-size: clamp(16px,2.5vw,22px); font-weight: 300; line-height: 1.35; letter-spacing: -0.4px; color: var(--gray-600); margin-top: 16px; }
.hero-right-label { font-size: 11px; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gray-400); margin-bottom: 18px; }
.hero-text { font-size: clamp(14px,1.8vw,16px); font-weight: 400; line-height: 1.7; color: var(--gray-600); margin-bottom: 20px; letter-spacing: -0.2px; }
.hero-text-border { font-size: clamp(14px,1.6vw,15px); font-weight: 400; line-height: 1.75; color: var(--black); border-left: 2px solid var(--black); padding-left: 16px; }
.her-top1{padding-bottom: 4rem;}
.her-dd1{color: #bbb;}
.hero-p1 { font-size: 1.25rem; line-height: 1.5; color: #444; margin-top: 1.5rem; max-width: 90%;font-weight: 200;}
.hero-two-col-extra {margin-top: 3rem;display: grid;grid-template-columns: 1fr 1fr;gap: 3rem;border-top: 1px solid #eee;padding-top: 2rem;}
.hero-r-l1 { color: #999; font-size: 0.75rem; margin-bottom: 1rem; }
.hero-h3-extra { font-size: 1.1rem; font-weight: 600; margin-bottom: 0.5rem; }
.hero-highlight-extra { font-weight: 600;font-size: 0.85rem;margin-bottom: 0.5rem;color: #000;line-height: normal;margin-top: 14px; }
.hero-text-extra { font-size: 0.95rem; line-height: 1.6; color: #555; }
.hero-two-col-extra {/*display: flex !important;*/gap: 40px;align-items: flex-start;}
.hero-two-col-extra > div:first-child {flex: 1.6;}
.hero-two-col-extra > div:last-child {flex: 1;}
.xd3{margin-bottom: 15px;}
.xd4{line-height: 1.6; opacity: 0.8;}
@media (max-width: 768px) {
.hero-two-col-extra {flex-direction: column;}
}
.divider { border: none; border-top: 1px solid var(--gray-200); }
section.breadcrumb {padding: 14px 0!important}
.breadcrumb {padding: 14px 0;border-bottom: 1px solid var(--gray-200);}
.breadcrumb__list {display: flex; flex-wrap: wrap;align-items: center; gap: 6px;list-style: none; margin: 0; padding: 0;}
.breadcrumb__item {display: flex; align-items: center; gap: 6px;font-size: 12px; color: var(--gray-400);}
.breadcrumb__item::after {content: "/"; color: var(--gray-200);}
.breadcrumb__item:last-child::after { display: none; }
.breadcrumb__item:last-child { color: var(--black); font-weight: 500; }
.breadcrumb__link {text-decoration: none; color: var(--gray-400);transition: color var(--tFast) ease;}
.breadcrumb__link:hover { color: var(--black); }
.breadcrumb__link:focus-visible { outline: var(--ring); outline-offset: 2px; border-radius: 4px; }
.hero-bereich { text-align: left; padding: 4rem 0 6rem 0; }
.nav-back + .hero-bereich { padding: 4rem 0 6rem 0; }
body:has(.blueprint-block) .hero-bereich, body:has(.terminal-item) .hero-bereich, body:has(.branchen-grid) .hero-bereich, body:has(.hero-datenblatt-layout) .hero-bereich { padding: 4rem 0 5rem 0; }
.hero-bereich .container { max-width: 955px; margin: 0 auto; }
body:has(.blueprint-block) .hero-content-block { max-width: 900px; }
h1 { font-family: "Inter", sans-serif; color: #000000; line-height: 1.1; letter-spacing: -0.04em; margin-bottom: 2.5rem; font-weight: 850; font-size: 4rem; }
body:has(.blueprint-block) h1, body:has(.kaskade-zeile) h1, body:has(.terminal-item) h1, body:has(.split-reihe) h1, body:has(.branchen-grid) h1, body:has(.hero-datenblatt-layout) h1 { font-size: 3.5rem; }
.hero-content-block { padding-left: 2rem; border-left: 2px solid #111111; }
h2.hero-subline { font-size: 1.6rem; font-weight: 600; line-height: 1.4; letter-spacing: -0.02em; color: #000000; margin-bottom: 1.5rem; }
.h1h1{max-width:650px;margin-bottom: 2.5rem;}
.hero-text { font-size: 1.3rem; font-weight: 400; line-height: 1.6; color: #444444; }
body:has(.blueprint-block) .hero-text, body:has(.kaskade-zeile) .hero-text, body:has(.terminal-item) .hero-text, body:has(.split-reihe) .hero-text, body:has(.branchen-grid) .hero-text { font-size: 1.25rem; }
section { padding: 7rem 0; }
body:has(.blueprint-block) section, body:has(.kaskade-zeile) section, body:has(.terminal-item) section, body:has(.split-reihe) section, body:has(.branchen-grid) section, body:has(.sollbruch-grid) section, body:has(.vergleichs-matrix) section { padding: 4rem 0; }
section.bg-grau { background-color: #f1f1f1; }
section.mit-linie { border-top: 1px solid #e5e5e5; }
body:has(.blueprint-block) section.mit-linie, body:has(.kaskade-zeile) main > section:first-of-type, body:has(.terminal-item) main > section:first-of-type, body:has(.split-reihe) main > section:first-of-type, body:has(.branchen-grid) main > section:first-of-type, body:has(.sollbruch-grid) main > section:first-of-type { border-top: 2px solid #111111;border-top: 1px solid var(--gray-200); }
h2 { font-size: 2.2rem; font-weight: 800; letter-spacing: -0.03em; line-height: 1.2; color: #000000; }
section h2:not(.sektions-titel) { margin-bottom: 3.5rem; }
.zweier-raster h2 { margin-bottom: 0; }
.sektions-titel { font-size: 2.2rem; font-weight: 850; letter-spacing: -0.03em; margin-bottom: 4rem; text-align: center; }
h3 { font-weight: 750; letter-spacing: -0.02em; margin-bottom: 1rem; color: #000000; }
.dreier-raster h3, .expertise-grid h3, .mit-linie h3, .branchen-grid h3, .sollbruch-grid h3, .vergleichs-matrix h3 { font-size: 1.35rem; }
.bg-grau .zweier-raster h3 { font-size: 1.5rem; }
p { color: #444444; font-weight: 400; margin-bottom: 1.5rem; }
.sektions-intro { font-size: 1.3rem; color: #222222; line-height: 1.5; }
.bg-grau .zweier-raster .sektions-intro { margin-bottom: 1rem; }
.text-block { max-width: 100%; }
.text-block h3 a {color: var(--black);text-decoration: underline;text-decoration-color: var(--gray-200);transition: text-decoration-color var(--tFast) ease;}
.text-block h3 a:hover {text-decoration-color: var(--black);}
.dreier-raster { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.klick-box { background: #ffffff; padding: 2.5rem 2rem; border: 1px solid #e5e5e5; display: flex; flex-direction: column; justify-content: space-between; text-decoration: none; color: inherit; transition: all 0.25s ease; border-radius: 6px;}
.klick-box:hover { border-color: #111111; background-color: #fafafa; transform: translateY(-2px); }
.klick-box p { margin-bottom: 0; }
.klick-box { position: relative; }
.klick-box-link {position: absolute;top: 0;left: 0; width: 100%;height: 100%;z-index: 1;}
.ti-kli{font-size: 0.85rem;margin-bottom: 15px;display: block;}
.sr-only {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);border: 0;}
.btn-link[aria-hidden="true"] { pointer-events: none;}
.cx1{padding-bottom: 15px;}
.zweier-raster { display: grid; grid-template-columns: 1fr 2fr; gap: 4rem; }
.inhalt-rechts { display: flex; flex-direction: column; }
.mit-linie .zweier-raster .inhalt-rechts { gap: 2rem; }
.bg-grau .zweier-raster .inhalt-rechts { gap: 2rem; }
.expertise-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem 4rem; }
.blueprint-block { display: grid; grid-template-columns: 300px 1fr; gap: 4rem; margin-bottom: 5rem; }
.blueprint-block:last-child { margin-bottom: 0; }
.bp-meta { position: sticky; top: 2rem;top: 3rem; background: #fff; }
.bp-label { font-size: 0.85rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.1em; color: #666666; margin-bottom: 0.5rem; display: block; }
.bp-titel { font-size: 1.8rem; font-weight: 850; line-height: 1.2; letter-spacing: -0.03em; color: #000000; }
.bp-content { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; background-color: #fafafa; padding: 3rem; border-left: 4px solid #111111; }
.weiche-spalte h4 { font-size: 1.1rem; font-weight: 750; margin-bottom: 1rem; text-transform: uppercase; letter-spacing: 0.05em; }
.symptom-titel { color: #666666; }
.struktur-titel { color: #000000; }
.kaskade-zeile { display: grid; grid-template-columns: 80px 1fr; gap: 3rem; padding: 3rem 0; border-top: 1px solid #e5e5e5; }
.kaskade-zeile:last-of-type { border-bottom: 1px solid #e5e5e5; }
.kaskade-nummer { font-size: 2.5rem; font-weight: 900; letter-spacing: -0.05em; line-height: 1; color: #cccccc; }
.kaskade-inhalt h3 { font-size: 1.4rem; font-weight: 800; margin-bottom: 0.75rem; letter-spacing: -0.02em; }
.kaskade-inhalt p { color: #444444; max-width: 800px; margin-bottom: 0; }
.hebel-boxen { display: flex; flex-direction: column; gap: 1.5rem; }
.hebel-card { background-color: #111111; color: #ffffff; padding: 2.5rem; display: grid; grid-template-columns: 250px 1fr; gap: 2rem; }
.hebel-card h3 { color: #ffffff; font-size: 1.3rem; font-weight: 750; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0; }
.hebel-card p { color: #cccccc; margin-bottom: 0; }
.terminal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; }
.terminal-item { border-top: 1px solid #111111; padding-top: 1.5rem; }
.terminal-tag { font-family: monospace; font-size: 0.85rem; font-weight: 700; color: #666666; margin-bottom: 1rem; display: block; }
.terminal-item h3 { font-size: 1.35rem; font-weight: 800; margin-bottom: 1rem; letter-spacing: -0.02em; }
.terminal-item p { font-size: 1.05rem; color: #444444; margin-bottom: 0; }
.btn-link { display: inline-block; font-weight: 700; color: #000000; text-decoration: none; border-bottom: 2px solid #000000; padding-bottom: 0.2rem; transition: all 0.2s ease; }
.dreier-raster .btn-link, .branchen-grid .btn-link { font-size: 1.05rem; }
.zweier-raster .btn-link { font-size: 1.1rem; align-self: flex-start; }
.btn-link::after { content: " →"; display: inline-block; transition: transform 0.2s ease; }
.klick-box:hover .btn-link::after, .branche-karte:hover .btn-link::after, .btn-link:hover::after { transform: translateX(4px); }
.klick-box:hover .btn-link, .branche-karte:hover .btn-link { color: #000000; border-color: #000000; }
.btn-haupt { display: inline-block; background-color: #111111; color: #ffffff; text-decoration: none; font-size: 1.15rem; font-weight: 700; padding: 1.2rem 2.5rem; border: 1px solid #111111; transition: all 0.2s ease; margin-top: 1.5rem; border-radius: 6px;}
.btn-haupt::after { content: " →"; }
.btn-haupt:hover { background-color: #ffffff; color: #111111; }
@media (max-width: 950px) {
.blueprint-block { grid-template-columns: 1fr; gap: 1.5rem; margin-bottom: 3rem; }
.bp-content { grid-template-columns: 1fr; gap: 2rem; padding: 2rem 1.5rem; }
}
@media (max-width: 900px) {
.hero-bereich { padding: 6rem 0 4rem 0; }
.nav-back + .hero-bereich { padding: 3rem 0 4rem 0; }
h1 { font-size: 2.6rem; }
body:has(.blueprint-block) h1, body:has(.kaskade-zeile) h1, body:has(.terminal-item) h1, body:has(.split-reihe) h1, body:has(.branchen-grid) h1, body:has(.hero-datenblatt-layout) h1 { font-size: 2.5rem; }
.hero-content-block { padding-left: 1.2rem; }
h2.hero-subline { font-size: 1.35rem; }
.hero-text { font-size: 1.15rem; }
section, body:has(.blueprint-block) section, body:has(.kaskade-zeile) section, body:has(.terminal-item) section, body:has(.split-reihe) section, body:has(.branchen-grid) section, body:has(.sollbruch-grid) section, body:has(.vergleichs-matrix) section { padding: 4rem 0; }
.dreier-raster, .zweier-raster, .expertise-grid, .terminal-grid, .branchen-grid, .sollbruch-grid, .vergleichs-matrix { grid-template-columns: 1fr; }
.dreier-raster, .expertise-grid, .branchen-grid, .sollbruch-grid { gap: 1.5rem; }
.zweier-raster, .vergleichs-matrix { gap: 2rem; }
.terminal-grid { gap: 3rem; }
section h2, .zweier-raster h2 { margin-bottom: 1rem; }
.sektions-titel { margin-bottom: 2.5rem; }
.inhalt-rechts { gap: 2.5rem !important; }
}
@media (max-width: 850px) {
.kaskade-zeile { grid-template-columns: 1fr; gap: 0.5rem; padding: 2rem 0; }
.hebel-card { grid-template-columns: 1fr; gap: 1rem; padding: 1.5rem; }
}
.split-reihe { display: grid; grid-template-columns: 1.2fr 1fr; gap: 5rem; padding: 4rem 0; border-top: 1px solid #e5e5e5; }
.split-reihe:first-of-type { border-top: none; }
.split-reihe:last-of-type { padding-bottom: 0; }
.split-links { display: flex; flex-direction: column; }
.split-links .meta-tag { font-size: 0.85rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; color: #666666; margin-bottom: 0.75rem; }
.split-links h3 { font-size: 1.7rem; font-weight: 850; line-height: 1.25; letter-spacing: -0.03em; margin-bottom: 1.5rem; }
.split-links p { font-size: 1.05rem; color: #444444; margin-bottom: 0; }
.split-rechts { background-color: #fafafa; padding: 3rem; border-left: 3px solid #111111; display: flex; flex-direction: column; justify-content: center; }
.split-rechts h4 { font-size: 1.1rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; color: #000000; margin-bottom: 1rem; }
.split-rechts p { font-size: 1.05rem; color: #222222; margin-bottom: 0; }
@media (max-width: 950px) {
.split-reihe { grid-template-columns: 1fr; gap: 2.5rem; padding: 3rem 0; }
.split-rechts { padding: 2rem 1.5rem; }
}
.branchen-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.5rem; }
.branche-karte { background-color: #ffffff; border: 1px solid #e5e5e5; padding: 3rem 2.5rem; display: flex; flex-direction: column; justify-content: space-between; text-decoration: none; color: inherit; transition: all 0.25s ease; border-radius: 6px;}
.branche-karte:hover { border-color: #111111; background-color: #fafafa; transform: translateY(-2px); }
.branche-nr { font-family: monospace; font-size: 0.85rem; font-weight: 700; color: #666666; margin-bottom: 1.5rem; display: block; }
.branche-inhalt { margin-bottom: 2.5rem; }
.branche-subtitle { font-size: 1.1rem; font-weight: 700; color: #111111; margin-bottom: 1rem; line-height: 1.4; }
.branche-karte p:not(.branche-subtitle) { font-size: 1.05rem; color: #444444; margin-bottom: 0; }
.branche-karte .btn-link { align-self: flex-start; }
.branche-karte {position: relative;}
.branche-karte:focus-within {outline: 3px solid var(--accent);outline-offset: 4px;}

.klick-box-link {position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 1;}
/*.btn-link {pointer-events: none;}*/
.hero-datenblatt-layout { display: grid; grid-template-columns: 1.5fr 1fr; gap: 4rem; align-items: start; max-width: 1100px !important; }
.hero-datenblatt-text { display: flex; flex-direction: column; }
.datenblatt-panel { background-color: #fafafa; border-top: 2px solid #111111; padding: 2rem; display: flex; flex-direction: column; gap: 1.25rem; }
.db-zeile { display: flex; flex-direction: column; border-bottom: 1px solid #e5e5e5; padding-bottom: 0.75rem; }
.db-zeile:last-of-type { border-bottom: none; padding-bottom: 0; }
.db-label { font-family: monospace; font-size: 0.8rem; font-weight: 700; color: #666666; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.25rem; }
.db-wert { font-size: 1.15rem; font-weight: 850; color: #111111; letter-spacing: -0.02em; }
.sollbruch-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; }
.sollbruch-card { border-top: 1px solid #cccccc; padding-top: 1.5rem; }
.phase-tag { font-family: monospace; font-size: 0.85rem; font-weight: 700; color: #666666; display: block; margin-bottom: 1rem; }
.sollbruch-card h3 { font-size: 1.4rem; font-weight: 850; letter-spacing: -0.02em; margin-bottom: 1rem; }
.sollbruch-card p { font-size: 1.05rem; color: #444444; margin-bottom: 0; }
.vergleichs-matrix { display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; }
.matrix-block { padding: 2.5rem; }
.matrix-block.ausgangslage { background-color: #ffffff; border-left: 3px solid #cccccc; }
.matrix-block.zielbild { background-color: #111111; color: #ffffff; }
.matrix-block.zielbild h3 { color: #ffffff; }
.matrix-block h3 { font-size: 1.4rem; font-weight: 850; margin-bottom: 2rem; letter-spacing: -0.02em; }
.matrix-liste { list-style: none; display: flex; flex-direction: column; gap: 1.5rem; }
.matrix-liste li { font-size: 1.05rem; position: relative; padding-left: 1.75rem; line-height: 1.5; }
.matrix-liste li::before { content: "—"; position: absolute; left: 0; color: #666666; }
.matrix-block.zielbild .matrix-liste li::before { color: #ffffff; }
.matrix-block.zielbild .matrix-liste li { color: #cccccc; }
@media (max-width: 950px) {
.hero-datenblatt-layout { grid-template-columns: 1fr; gap: 2.5rem; }
.datenblatt-panel { padding: 1.5rem; }
}
.industrie-split { display: grid; grid-template-columns: 1fr 2fr; gap: 5rem; }
.werkstatt-status { background: #111111; color: #ffffff; padding: 3rem 2rem; align-self: flex-start; }
.werkstatt-status h3 { color: #ffffff; font-size: 1.1rem; text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 2rem; border-bottom: 1px solid #333333; padding-bottom: 0.5rem; }
.status-punkt { margin-bottom: 1.5rem; }
.status-punkt:last-child { margin-bottom: 0; }
.status-label { font-size: 0.85rem; color: #888888; font-weight: 600; display: block; }
.status-wert { font-size: 1.2rem; font-weight: 700; }
.schichten-liste { display: flex; flex-direction: column; gap: 3.5rem; }
.schicht-block { border-bottom: 1px solid #e5e5e5; padding-bottom: 2.5rem; }
.schicht-block:last-child { border-bottom: none; padding-bottom: 0; }
.schicht-kennung { font-size: 0.9rem; font-weight: 800; color: #666666; letter-spacing: 0.05em; display: block; margin-bottom: 0.5rem; }
h3.schicht-titel { font-size: 1.6rem; font-weight: 800; color: #000000; margin-bottom: 1rem; }
.vergleichs-tabelle { width: 100%; border-collapse: collapse; margin-top: 2rem; }
.vergleichs-tabelle th { text-align: left; padding: 1rem; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.05em; border-bottom: 2px solid #111111; }
.vergleichs-tabelle td { padding: 1.5rem 1rem; border-bottom: 1px solid #e5e5e5; vertical-align: top; }
.tab-alt { color: #666666; width: 45%; }
.tab-neu { font-weight: 600; color: #000000; width: 55%; }
.tab-neu::before { content: "→ "; color: #111111; }
@media (max-width: 900px) {
.industrie-split { grid-template-columns: 1fr; gap: 3rem; }
.vergleichs-tabelle th { display: none; }
.vergleichs-tabelle td { display: block; width: 100%; padding: 0.75rem 0; }
.vergleichs-tabelle tr { display: block; padding: 1.5rem 0; border-bottom: 1px solid #e5e5e5; }
.vergleichs-tabelle tr:last-child { border-bottom: none; }
}
.b2b-kpi-band { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; padding: 2rem 0; margin-top: 2rem; }
.b2b-kpi-block { text-align: left; padding-right: 2rem; }
.b2b-kpi-block:not(:last-child) { border-right: 1px solid #e5e5e5; }
.b2b-kpi-block:not(:first-child) { padding-left: 2rem; }
.b2b-kpi-wert { font-size: 1.4rem; font-weight: 850; color: #111111; display: block; line-height: 1.2; margin-bottom: 0.25rem; }
.b2b-kpi-label { font-size: 0.95rem; color: #666666; font-weight: 500; }
.b2b-spiegel-split { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.b2b-spiegel-seite h3 { font-size: 1.6rem; font-weight: 800; margin-bottom: 2rem; padding-bottom: 0.75rem; }
.b2b-seite-links h3 { border-bottom: 2px solid #e5e5e5; color: #666666; }
.b2b-seite-rechts h3 { border-bottom: 2px solid #111111; color: #111111; }
.b2b-problem-item { margin-bottom: 2.5rem; }
.b2b-problem-item h4 { font-size: 1.2rem; font-weight: 700; margin-bottom: 0.5rem; color: #111111; }
.b2b-hebel-liste { max-width: 850px; margin: 0 auto; }
.b2b-hebel-zeile { display: grid; grid-template-columns: 80px 1fr; gap: 2rem; padding: 2.5rem 0; border-bottom: 1px solid #e5e5e5; }
.b2b-hebel-zeile:first-child { padding-top: 0; }
.b2b-hebel-zeile:last-child { border-bottom: none; padding-bottom: 0; }
.b2b-hebel-num { font-size: 2.5rem; font-weight: 900; color: #111111; line-height: 1; }
.b2b-hebel-inhalt h3 { font-size: 1.35rem; font-weight: 750; margin-bottom: 0.5rem; color: #000000; }
@media (max-width: 900px) {
.b2b-kpi-band { grid-template-columns: 1fr; gap: 1.5rem; }
.b2b-kpi-block:not(:last-child) { border-right: none; border-bottom: 1px solid #e5e5e5; padding-bottom: 1.5rem; }
.b2b-kpi-block:not(:first-child) { padding-left: 0; }
.b2b-spiegel-split { grid-template-columns: 1fr; gap: 3rem; }
.b2b-hebel-zeile { grid-template-columns: 1fr; gap: 0.5rem; padding: 1.5rem 0; }
}
.labor-infoband { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; padding: 2rem 0; margin-top: 3rem; }
.labor-info-block { font-size: 1.05rem; font-weight: 700; color: #111111; letter-spacing: -0.01em; }
.labor-info-block:not(:first-child) { padding-left: 2rem; border-left: 1px solid #e5e5e5; }
.labor-risiko-liste { display: flex; flex-direction: column; gap: 3.5rem; margin-top: 3rem; }
.labor-risiko-item { display: grid; grid-template-columns: 1fr 2fr; gap: 4rem; border-bottom: 1px solid #e5e5e5; padding-bottom: 3rem; }
.labor-risiko-item:last-child { border-bottom: none; padding-bottom: 0; }
.labor-risiko-meta h3 { font-size: 1.2rem; font-weight: 850; color: #000000; letter-spacing: -0.02em; line-height: 1.3; }
.labor-risiko-meta span { font-size: 0.85rem; font-weight: 800; color: #666666; letter-spacing: 0.05em; display: block; margin-bottom: 0.5rem; }
.labor-flow-schema { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 1.5rem; margin-top: 3.5rem; background: #ffffff; border: 1px solid #e5e5e5; padding: 3rem 2rem; }
.labor-flow-step { background: #111111; color: #ffffff; padding: 1.5rem; font-size: 1.05rem; font-weight: 700; text-align: center; line-height: 1.4; }
.labor-flow-arrow { font-size: 1.8rem; font-weight: 300; color: #999999; text-align: center; }
@media (max-width: 900px) {
.labor-infoband { grid-template-columns: 1fr; gap: 1.5rem; }
.labor-info-block:not(:first-child) { padding-left: 0; border-left: none; border-top: 1px solid #e5e5e5; padding-top: 1.5rem; }
.labor-risiko-item { grid-template-columns: 1fr; gap: 1rem; padding-bottom: 2rem; }
.labor-flow-schema { grid-template-columns: 1fr; padding: 2rem 1.5rem; gap: 1rem; }
.labor-flow-arrow { transform: rotate(90deg); margin: 0.5rem 0; }
}
.ansatz-schritte-liste { display: flex; flex-direction: column; gap: 3rem; margin-top: 3.5rem; }
.ansatz-schritt-zeile { display: grid; grid-template-columns: 80px 1.5fr 3.5fr; gap: 3rem; border-bottom: 1px solid #e5e5e5; padding-bottom: 3rem; }
.ansatz-schritt-zeile:last-child { border-bottom: none; padding-bottom: 0; }
.ansatz-schritt-num { font-size: 2.2rem; font-weight: 900; color: #111111; line-height: 1; }
.ansatz-schritt-meta h3 { font-size: 1.4rem; font-weight: 850; color: #000000; letter-spacing: -0.02em; margin-bottom: 0.75rem; line-height: 1.2; }
.ansatz-aufwand-tag { display: inline-block; font-size: 0.85rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; background: #f4f4f4; color: #555555; padding: 0.4rem 0.8rem; border-left: 3px solid #111111; }
.ansatz-schritt-text p { font-size: 1.1rem; color: #333333; line-height: 1.65; margin: 0; }
.ansatz-prinzipien-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4.5rem; margin-top: 3rem; }
.ansatz-prinzip-box h3 { font-size: 1.5rem; font-weight: 850; color: #000000; letter-spacing: -0.02em; margin-bottom: 1rem; }
.ansatz-prinzip-box p { font-size: 1.1rem; color: #444444; line-height: 1.65; }
@media (max-width: 900px) {
.ansatz-schritt-zeile { grid-template-columns: 1fr; gap: 1rem; padding-bottom: 2.5rem; }
.ansatz-schritt-num { font-size: 2rem; }
.ansatz-prinzipien-grid { grid-template-columns: 1fr; gap: 3rem; }
}
.formsplit-bereich { padding: 5rem 0 8rem 0; }
.formsplit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; align-items: flex-start; }
.formsplit-info h1 { font-size: 3.5rem; font-weight: 850; line-height: 1.1; letter-spacing: -0.04em; margin-bottom: 2rem; color: #000000; }
.formsplit-info p { font-size: 1.2rem; color: #444444; margin-bottom: 3rem; max-width: 480px; }
.formsplit-vorteile { list-style: none; padding: 0; margin: 0; }
.formsplit-vorteil-item { position: relative; padding-left: 2rem; margin-bottom: 1.5rem; font-size: 1.05rem; font-weight: 500; color: #222222; }
.formsplit-vorteil-item::before { content: "→"; position: absolute; left: 0; font-weight: 700; color: #111111; }
.formsplit-container { background-color: #fafafa; border-top: 3px solid #111111; padding: 3rem; }
.formsplit-gruppe { margin-bottom: 1.75rem; }
.formsplit-gruppe label { display: block; font-size: 0.95rem; font-weight: 700; margin-bottom: 0.5rem; color: #111111; }
.formsplit-control { width: 100%; font-family: "Inter", sans-serif; font-size: 1.05rem; padding: 0.85rem 1rem; border: 1px solid #cccccc; background-color: #ffffff; color: #111111; transition: border-color 0.2s; }
.formsplit-control:focus { outline: none; border-color: #111111; }
textarea.formsplit-control { resize: vertical; min-height: 100px; }
.formsplit-check { display: flex; align-items: flex-start; gap: 1rem; margin-top: 2rem; margin-bottom: 2rem; }
.formsplit-check input[type="checkbox"] { margin-top: 0.35rem; width: 18px; height: 18px; cursor: pointer; accent-color: #111111; }
.formsplit-check label { font-size: 0.9rem; line-height: 1.5; color: #444444; font-weight: 400; cursor: pointer; }
.formsplit-check a { color: #111111; text-decoration: underline; }
.formsplit-pflicht { font-size: 0.85rem; color: #666666; margin-bottom: 1.5rem; }
.formsplit-btn { width: 100%; background-color: #111111; color: #ffffff; border: 1px solid #111111; font-family: "Inter", sans-serif; font-size: 1.15rem; font-weight: 700; padding: 1.2rem; cursor: pointer; transition: all 0.2s ease; }
.formsplit-btn:hover { background-color: #ffffff; color: #111111; }
.formsplit-disclaimer { margin-top: 5rem; border-top: 1px solid #e5e5e5; padding-top: 1.5rem; font-size: 0.85rem; color: #777777; line-height: 1.5; }
@media (max-width: 900px) {
.formsplit-grid { grid-template-columns: 1fr; gap: 4rem; }
.formsplit-info h1 { font-size: 2.5rem; }
.formsplit-container { padding: 2rem 1.5rem; }
.formsplit-bereich { padding: 3rem 0 5rem 0; }
.formsplit-disclaimer { margin-top: 3rem; }
}
main.legal-bereich { padding: 5rem 0 8rem 0; }
.legal-title { font-size: 3.5rem; font-weight: 850; line-height: 1.1; letter-spacing: -0.04em; margin-bottom: 4rem; color: #000000; border-bottom: 2px solid #111111; padding-bottom: 1.5rem; }
.legal-grid { display: grid; grid-template-columns: 280px 1fr; gap: 2.5rem; border-bottom: 1px solid #e5e5e5; padding: 2rem 0; }
.legal-grid:first-of-type { padding-top: 0; }
.legal-label { font-size: 0.9rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; color: #666666; }
.legal-wert { color: #111111; font-weight: 500; }
.legal-wert p { margin-bottom: 0.5rem; }
.legal-wert p:last-child { margin-bottom: 0; }
.legal-sub { font-size: 1.4rem; font-weight: 800; margin-top: 4rem; margin-bottom: 1rem; letter-spacing: -0.02em; }
p.legal-disclaimer { color: #555555; font-size: 1rem; margin-bottom: 1.5rem; }
@media (max-width: 750px) {
.legal-grid { grid-template-columns: 1fr; gap: 0.5rem; padding: 1.5rem 0; }
.legal-title { font-size: 2.5rem; margin-bottom: 2.5rem; }
}
.ds-bereich { padding: 5rem 0 8rem 0; }
.ds-title { font-size: 3.5rem; font-weight: 850; line-height: 1.1; letter-spacing: -0.04em; margin-bottom: 4rem; color: #000000; border-bottom: 2px solid #111111; padding-bottom: 1.5rem; }
.ds-kapitel { margin-bottom: 4rem; }
.ds-kennung { font-size: 0.85rem; font-weight: 800; color: #666666; letter-spacing: 0.1em; display: block; margin-bottom: 0.5rem; }
.ds-kapitel h2 { font-size: 1.6rem; font-weight: 800; color: #000000; margin-bottom: 1.5rem; letter-spacing: -0.02em; }
.ds-kapitel h3 { font-size: 1.2rem; font-weight: 750; margin-top: 2rem; margin-bottom: 0.75rem; color: #000000; }
.ds-kapitel p { color: #333333; margin-bottom: 1.2rem; font-size: 1.05rem; }
.ds-liste { margin-left: 1.5rem; margin-bottom: 1.2rem; color: #333333; }
.ds-liste li { margin-bottom: 0.5rem; }
@media (max-width: 750px) {
.ds-title { font-size: 2.5rem; margin-bottom: 2.5rem; }
.ds-kapitel h2 { font-size: 1.4rem; }
}
.ansatz-timeline { max-width: 900px; margin: 0 auto; position: relative; padding-left: 3.5rem; }
.ansatz-timeline::before { content: ""; position: absolute; left: 7px; top: 5px; bottom: 5px; width: 2px; background-color: #111111; }
.ansatz-timeline-item { position: relative; margin-bottom: 4.5rem; }
.ansatz-timeline-item:last-child { margin-bottom: 0; }
.ansatz-timeline-dot { position: absolute; left: -3.5rem; top: 6px; width: 16px; height: 16px; background-color: #ffffff; border: 4px solid #111111; border-radius: 50%; z-index: 2; }
.ansatz-timeline-header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 1rem; border-bottom: 1px solid #e5e5e5; padding-bottom: 0.5rem; }
.ansatz-timeline-titel { font-size: 1.5rem; font-weight: 800; color: #000000; letter-spacing: -0.02em; }
.ansatz-timeline-aufwand { font-size: 0.85rem; font-weight: 700; text-transform: uppercase; color: #666666; letter-spacing: 0.05em; }
.ansatz-p { color: #444444 !important; font-weight: 400 !important; font-size: 1.1rem !important; line-height: 1.65 !important; }
.ansatz-prinzipien-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.ansatz-prinzip-block h3 { font-size: 2.2rem; font-weight: 900; letter-spacing: -0.04em; line-height: 1.1; margin-bottom: 1.5rem; color: #ffffff; }
.ansatz-prinzip-p { color: #cccccc !important; font-size: 1.1rem !important; line-height: 1.65 !important; }
@media (max-width: 900px) {
.ansatz-timeline { padding-left: 2rem; }
.ansatz-timeline::before { left: 5px; }
.ansatz-timeline-dot { left: -2rem; width: 12px; height: 12px; border-width: 3px; top: 8px; }
.ansatz-timeline-header { flex-direction: column; gap: 0.2rem; }
.ansatz-prinzipien-grid { grid-template-columns: 1fr; gap: 3rem; }
}
.bg-dunkel { background: #000; }
footer { border-top: 1px solid var(--gray-200); padding: 22px 0; }
.footer-inner { max-width:var(--max); margin:0 auto; padding:0 var(--pad); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px;font-weight: normal; }
.footer-name { font-size:13px; color:var(--gray-400); }
.footer-links { display:flex; gap:20px; }
.footer-links a { font-size:13px; color:var(--gray-400); text-decoration:none; }
.footer-links a:hover { color:var(--black); }
.clean-footer {padding: 50px 0;font-size: 0.9rem;color: #6c757d;background-color: #fafafa;border-top: 1px solid #f1f3f5;}
.footer-flex {display: flex;justify-content: space-between;align-items: flex-start;flex-wrap: wrap;gap: 40px;}
.footer-left {max-width: 550px;color: #4a4f54;}
.footer-desc {display: block;color: #71767b;margin-top: 6px;font-size: 0.85rem;}
.footer-nav span {font-weight: 600;color: #343a40;}
.footer-nav a {color: #6c757d;text-decoration: none;margin-left: 25px;}
.skip-link {position: absolute; left: -999px; top: 0;padding: 10px 12px; background: #fff;border: 1px solid #cfd6df; border-radius: 10px;z-index: 9999; font-size: 0.875rem; color: #111; text-decoration: none;}
.skip-link:focus { left: 12px; top: 12px; }
.skip-link--top:focus { top: auto; bottom: 12px; }
.rfr { display: block; position: relative; }
.kgc{max-width: 750px; margin: 0 auto; text-align: center;}
.kgc1{margin-bottom: 2rem; font-size: 1.2rem; color: #444444;}
.kgc2{margin-top: 1.5rem;}
.kgc3{font-size: 0.95rem; color: #666666;}
.kgc4{font-size: 0.95rem; color: #111111; font-weight: 600; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.2s}
.kgc4:hover{ border-bottom: 1px solid #111111; transition: border-color 0.2s}
section.bg-grau.x-b1{padding: 3rem 0;}
.rela-br{max-width: 1050px;}
.related { /*margin-top: clamp(32px,5vw,56px);*/ padding-top: clamp(24px,4vw,40px); border-top: 1px solid var(--gray-200); }
.related__label { font-size: 11px; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gray-400); margin-bottom: 16px; }
.related__links { display: flex; flex-wrap: wrap; gap: 10px; }
.related__link {display: inline-flex; align-items: center; gap: 8px;padding: 9px 16px; border-radius: 999px;border-radius:6px;border: 1px solid var(--gray-200);font-size: 13px; font-weight: 400; color: var(--black);text-decoration: none;transition: border-color var(--tFast) ease, background var(--tFast) ease;text-decoration: none !important;}
.related__link:hover { border-color: var(--black); background: var(--gray-100); }
.related__link:focus-visible { outline: var(--ring); outline-offset: 2px; }
.related__link::before { content: "→"; font-size: 12px; color: var(--gray-400); }
.related__link:hover.no-link {     border: 1px solid var(--gray-200); }
.text-block-max { max-width: 800px !important; margin: 0 auto; }
.text-block-max-1 { max-width: 800px !important; margin: 0 auto; }
.info-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media (min-width: 768px) {
    .info-grid { grid-template-columns: 250px 1fr; gap: 4rem; }
}
.text-block-max-1 {max-width: 800px !important;margin: 0 auto;}
.intro-text {font-size: 1.25rem;font-weight: 500;color: #000;line-height: 1.5;margin-bottom: 2rem;}.info-content p {margin-bottom: 1.5rem;color: #444;line-height: 1.7;}.mt-large {margin-top: 3rem;}.bg-hellgrau {background-color: #fafafa;padding: 5rem 0;}
.form-status { padding: 20px; border-radius: 4px; margin-bottom: 20px; }
.status-success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.status-error { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
.contact-form-container { background: #f9f9f9; padding: 50px; border-radius: 4px;border: 1px solid #efefef;box-shadow: 0 10px 30px rgba(0,0,0,0.02);}
.form-header {margin-bottom: 35px;padding-bottom: 20px;border-bottom: 1px solid #eaeaea;}
.form-header h3 {margin: 0 0 10px 0;font-size: 1.6rem;color: #000;}
.form-header p {font-size: 0.95rem;color: #555;line-height: 1.4;}
.main-form { display: flex; flex-direction: column;}
.form-group {position: relative; margin-bottom: 25px;}
.form-group label {display: block;margin-bottom: 8px;font-size: 0.9rem;font-weight: bold;}
.form-group input, 
.form-group textarea {width: 100%;padding: 18px 12px 10px 12px;border: 1px solid #ccc;border-radius: 6px;box-sizing: border-box; background: #fff;font-family: inherit;font-size: 1rem;outline: none;transition: all 0.2s ease;}
.form-group input:focus, 
.form-group textarea:focus {outline: 3px solid #005fcc;outline-offset: 2px;}
.form-group textarea {resize: vertical;min-height: 100px; max-height: 400px;}
.form-group input:valid:not(:placeholder-shown) {border-color: #1e7e34;}
.form-group-checkbox {display: flex;gap: 12px;align-items: flex-start;margin: 10px 0 25px 0;}
.form-group-checkbox input[type="checkbox"] {width: 18px;height: 18px;cursor: pointer;flex-shrink: 0;margin-top: 2px;}
.form-group-checkbox label {font-size: 0.85rem;line-height: 1.4;cursor: pointer;}
.form-group label {position: absolute;left: 12px;top: 15px;color: #888;background: transparent;transition: all 0.2s ease;pointer-events: none;}
.form-group input:focus + label,
.form-group input:not(:placeholder-shown) + label,
.form-group textarea:focus + label,
.form-group textarea:not(:placeholder-shown) + label {top: -10px;left: 10px;font-size: 0.75rem;font-weight: bold;color: #000;background: #f9f9f9;padding: 0 4px;}
.cta-btn { font-size:clamp(12px,1.5vw,14px); font-weight:500; background:var(--black); color:#fff; border:none; border-radius:8px; padding:clamp(11px,2vw,15px) clamp(18px,3vw,28px); cursor:pointer; white-space:nowrap; flex-shrink:0;text-decoration: none;}
.cta-btn:hover { background: #333; }
.form-note { font-size:0.8rem;margin-top:10px;opacity: 0.7;}
.hp-field {position: absolute;left: -9999px;width: 1px;height: 1px;overflow: hidden;}
@media (max-width: 767px) {
.vergleichs-matrix {grid-template-columns: 1fr;}
.branchen-grid {grid-template-columns: repeat(1, 1fr);}
.sollbruch-grid{grid-template-columns: repeat(1, 1fr);}
}
@media (max-width: 468px) {
   h1 {font-size: 2.1rem; }
   h2 {font-size: 1.92rem;}
    section h2, .zweier-raster h2 {margin-bottom: 1rem;}
    body:has(.blueprint-block) h1, body:has(.kaskade-zeile) h1, body:has(.terminal-item) h1, body:has(.split-reihe) h1, body:has(.branchen-grid) h1, body:has(.hero-datenblatt-layout) h1 {font-size: 2.1rem;}
    .sektions-titel {margin-bottom: 2.1rem;}
   .container {padding: 0 1.5rem;}
   .btn-haupt {padding: 1.2rem 1.25rem;}
   .hero-bereich {padding: 3rem 0 4rem 0;}
   .kgc3 {width: 100%;display: block;}
   section.breadcrumb {display: none;}
   .sektions-titel {font-size: 2.06rem;}
}