/* Corporate Identity V2.1 für Unterseiten. Wird NACH den Seiten-CSS geladen. */
:root{--ci-g:#0F3B2E;--ci-gm:#1E5A47;--ci-gl:#4FBE86;--ci-card-sh:0 1px 2px rgba(10,10,10,.04),0 22px 46px -32px rgba(10,10,10,.28)}
a{color:inherit}a:hover{color:var(--ci-g)}
::selection{background:var(--ci-g);color:var(--vt-paper)}
/* Metastreifen */
.vt-metastrip{background:var(--ci-g)}
.vt-metastrip .live{background:var(--ci-gl);box-shadow:0 0 8px rgba(79,190,134,.8)}
/* Navigation als schwebende Pille */
.vt-nav{top:12px;background:none!important;border:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:12px 0 0;margin-bottom:-76px}
.vt-nav .vt-wrap{max-width:min(var(--vt-container),calc(100% - 32px));height:60px;padding:0 8px 0 22px;background:rgba(255,255,255,.94);border:1px solid rgba(10,10,10,.06);border-radius:999px;box-shadow:var(--ci-card-sh)}
.vt-navlinks{gap:4px}
.vt-navlinks a{padding:.55rem .95rem;border:0!important;border-radius:999px;transition:background .25s ease,color .25s ease}
.vt-navlinks a:hover{background:var(--ci-g);color:var(--vt-paper)}
.vt-navlinks a[aria-current="page"]{background:rgba(15,59,46,.08);color:var(--ci-g)}
.vt-nav-cta{border-radius:999px!important;background:var(--ci-g)!important;border-color:var(--ci-g)!important;color:var(--vt-paper)!important;padding:.7rem 1.25rem!important;font-weight:600}
.vt-nav-cta:hover{background:var(--ci-gm)!important;border-color:var(--ci-gm)!important}
/* Hero */
.vt-hero{border-bottom:0!important}
.vt-hero .vt-wrap{padding-top:clamp(110px,12vw,170px)}
.vt-eyebrow,.fs-eyebrow{color:var(--ci-g)!important}
.vt-hero h1 .neg,.fs-hero h1 .neg{color:var(--ci-g)}
.vt-hero-meta{gap:8px}
.vt-hero-meta .item{padding:.5rem .85rem;border-radius:999px;background:#fff;border:1px solid rgba(10,10,10,.06);color:var(--vt-ink)}
.vt-hero-meta .item::before{width:6px;height:6px;border-radius:2px;background:var(--ci-gl)}
/* Abschnitte: keine Trennstriche, Nummern grün */
.vt-section{border-bottom:0!important}
.vt-section-tag .num{color:var(--ci-g);font-weight:600}
.vt-section-title{color:var(--vt-ink)}
.vt-text a,.vt-card-body a{color:var(--ci-g);text-decoration-color:rgba(15,59,46,.35)}
.vt-text a:hover,.vt-card-body a:hover{text-decoration-color:var(--ci-g)}
.vt-list li::before{width:6px;height:6px;top:9px;border-radius:2px;background:var(--ci-gl)}
.vt-clause .vt-clause-num{color:var(--ci-g);font-weight:600}
/* Karten */
.vt-card,.vt-contact-tile{background:#fff!important;border:1px solid rgba(10,10,10,.06)!important;border-radius:22px;box-shadow:var(--ci-card-sh)}
.vt-contact-tile{border-radius:18px;transition:transform .3s ease,box-shadow .3s ease}
.vt-contact-tile:hover{transform:translateY(-3px);box-shadow:0 1px 2px rgba(10,10,10,.04),0 30px 54px -32px rgba(15,59,46,.4)}
.vt-card-sub{color:var(--ci-g)}
.vt-card-grid{border-top-color:rgba(10,10,10,.06)}
.vt-inset{border:0!important;border-radius:14px;background:rgba(79,190,134,.12)!important}
/* Leistungen */
.lv-cta,.fs-cta{background:var(--ci-g)!important;position:relative;overflow:hidden;isolation:isolate}
.lv-cta::after,.fs-cta::after{content:"";position:absolute;z-index:-1;width:640px;aspect-ratio:1;right:-220px;top:-320px;border-radius:50%;background:radial-gradient(closest-side,rgba(79,190,134,.3),transparent);pointer-events:none}
.lv-cta__eyebrow{color:var(--ci-gl)!important}
.lv-btn,.fs-btn{border-radius:999px!important}
.lv-cta .lv-btn:not(.lv-btn--ghost),.fs-cta .fs-btn:not(.fs-btn--ghost){background:var(--ci-gl)!important;border-color:var(--ci-gl)!important;color:var(--vt-ink)!important;box-shadow:0 14px 30px -14px rgba(79,190,134,.7)}
.lv-badge{border-radius:999px}
/* Fallstudien */
.fs-ba,.fs-flow,.fs-tx,.fs-quote,.fs-more,.fs-figure,.fs-shot{background:#fff!important;border:1px solid rgba(10,10,10,.06)!important;border-radius:20px;box-shadow:var(--ci-card-sh);overflow:hidden}
.fs-cost{border:0!important;border-radius:14px;background:rgba(79,190,134,.12)!important}
.fs-ba__row .bar i{background:var(--ci-g)!important;border-radius:3px}
.fs-ba__row.is-after .bar i,.fs-ba__row .bar.is-after i{background:var(--ci-gl)!important}
.fs-tx__play{border-radius:999px!important}
.fs-gate__ico{border-radius:50%!important;background:var(--ci-g);color:var(--ci-gl)!important;border:0!important}
/* Glossar */
.gl-search{border-radius:999px!important;border-color:rgba(10,10,10,.08)!important;box-shadow:var(--ci-card-sh)}
.gl-letter-char{border-radius:10px;background:var(--ci-g);color:var(--vt-paper)!important;border-color:var(--ci-g)!important}
.gl-tag{border-radius:999px}
/* Kontakt-Funnel */
.fpage .btn{border-radius:999px!important;background:var(--ci-g)!important;border-color:var(--ci-g)!important;color:var(--vt-paper)!important}
.fpage .btn::before{background:var(--ci-gm)!important}
.fpage .btn--ghost{background:transparent!important;color:var(--vt-ink)!important;border-color:rgba(10,10,10,.15)!important}
.frow,.fopt{border-radius:16px!important;background:#fff;border-color:rgba(10,10,10,.08)!important}
.frow:hover,.fopt:hover{border-color:var(--ci-g)!important}
.fchip,.fpref{border-radius:999px!important}
.fpref.is-sel,.fchip.is-sel,.fopt.is-sel,.frow.is-sel{background:var(--ci-g)!important;border-color:var(--ci-g)!important;color:var(--vt-paper)!important}
.ffield input,.fziel textarea{border-radius:14px!important}
.kbar__bar,.kbar__bar i{border-radius:999px}
/* Footer: grüne Linie oben, grüner Fußstreifen */
.vt-footer{border-top:4px solid var(--ci-gl);overflow:hidden}
.vt-footer .vt-wrap{padding-bottom:0}
.vt-footer-top{border-bottom:0}
.vt-footer-links a{color:rgba(245,244,240,.75);display:inline-flex;align-items:center;gap:.55rem}
.vt-footer-links a::before{content:"";width:5px;height:5px;border-radius:2px;background:var(--ci-gl);transition:width .25s ease}
.vt-footer-links a:hover{color:var(--vt-paper)}
.vt-footer-links a:hover::before{width:14px}
.vt-footer-copy{margin:32px calc(50% - 50vw) 0;padding:16px calc(50vw - 50%);background:var(--ci-g);color:rgba(245,244,240,.8)}
@media (max-width:760px){.vt-nav .vt-wrap{padding:0 6px 0 16px;height:56px}.vt-nav{margin-bottom:-70px}}

/* ===== Mobile ===== */
.ci-burger{display:none}
@media (max-width:1100px){
.vt-nav .vt-wrap{position:relative;gap:8px}
.vt-nav .vt-brand{margin-right:auto}
.vt-nav-cta{padding:.6rem .95rem!important;font-size:12.5px!important}
.ci-burger{display:grid;place-content:center;gap:5px;flex:none;width:44px;height:44px;border-radius:50%;border:0;background:rgba(15,59,46,.08);cursor:pointer}
.ci-burger span{display:block;width:18px;height:2px;border-radius:2px;background:var(--ci-g);transition:transform .3s ease}
.vt-nav.is-open .ci-burger span:first-child{transform:translateY(3.5px) rotate(45deg)}
.vt-nav.is-open .ci-burger span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.vt-navlinks{display:flex!important;flex-direction:column;gap:2px;position:absolute;left:0;right:0;top:calc(100% + 8px);padding:8px;background:#fff;border:1px solid rgba(10,10,10,.06);border-radius:22px;box-shadow:0 30px 60px -30px rgba(10,10,10,.45);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s ease,transform .3s ease,visibility 0s .3s}
.vt-nav.is-open .vt-navlinks{opacity:1;visibility:visible;transform:none;transition:opacity .25s ease,transform .3s ease}
.vt-navlinks a{padding:.9rem 1rem!important;font-size:16px!important}
.vt-hero .vt-wrap{padding-top:112px}
.vt-hero h1,.fs-hero h1{max-width:none!important;overflow-wrap:break-word;hyphens:auto}
.vt-section{grid-template-columns:minmax(0,1fr)!important}
.vt-section>*{min-width:0}
.vt-text,.vt-card-body,.vt-subblock h3,.vt-field-value,.vt-contact-tile .val{overflow-wrap:anywhere}
.vt-card{padding:22px 20px}
.vt-section-tag,.vt-card-label,.vt-field-label,.kick,.vt-hero-meta .item,.vt-footer-links a,.vt-footer-copy,.fstep__eyebrow,.fintro__sigrole,.gl-letter-count{font-size:12px!important}
.lv-badge{font-size:11px!important}
.vt-footer-top{flex-direction:column;gap:20px}
.vt-footer-links{gap:12px 20px}
.vt-footer-links a{padding:6px 0}
.lv-btn,.fs-btn,.fpage .btn{min-height:48px}
.kbar__back{width:44px;height:44px;display:inline-grid!important;place-items:center;margin-left:-12px}
}

/* Kontakt: ausgewählte Zeile – alle Texte hell */
.frow.is-sel .frow__t,.frow.is-sel .frow__s,.fopt.is-sel *,.frow.is-sel .frow__key{color:var(--vt-paper)!important}
.frow.is-sel .frow__s{color:rgba(245,244,240,.78)!important}
.frow.is-sel .frow__key{background:rgba(245,244,240,.14)!important;border-color:transparent!important}
.frow.is-sel .frow__check{border-color:var(--ci-gl)!important;color:var(--ci-gl)!important}

/* Kontakt: Zahl + Label in gewählter Zahlen-Kachel lesbar */
.fpage .fopt.is-sel .fopt__big{color:var(--vt-paper)!important}
.fpage .fopt.is-sel .fopt__lbl{color:rgba(245,244,240,.78)!important}
.fpage .frow.is-sel .frow__ic{color:var(--ci-gl)!important}
.fpage .frow.is-sel .frow__check{background:var(--ci-gl)!important;border-color:var(--ci-gl)!important}
.fpage .frow.is-sel .frow__check .lucide{color:var(--ci-g)!important}

/* Kontakt: Auswahl-Übergang */
.fopt,.frow,.fchip{position:relative;overflow:hidden;isolation:isolate}
.fpick-wave{position:absolute;z-index:-1;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:rgba(79,190,134,.55);pointer-events:none;animation:fpWave .65s cubic-bezier(.2,.7,.3,1) forwards}
@keyframes fpWave{to{transform:scale(40);opacity:0}}
.is-picking>.fopt:not(.is-sel),.is-picking>.frow:not(.is-sel),.is-picking>.fchip:not(.is-sel){opacity:.45;transform:scale(.97);transition:opacity .3s ease,transform .3s ease}
.fopt.is-pop,.frow.is-pop,.fchip.is-pop{animation:fpPop .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes fpPop{0%{transform:scale(1)}35%{transform:scale(.94)}100%{transform:scale(1)}}
.fopt.is-sel::after{content:"";position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;background:var(--ci-gl) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F3B2E' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/13px no-repeat;animation:fpCheck .4s cubic-bezier(.3,1.8,.5,1) .1s both}
@keyframes fpCheck{from{transform:scale(0) rotate(-30deg)}to{transform:none}}
.fpick-fly{position:fixed;z-index:9999;pointer-events:none;font-family:var(--vt-font-display);font-weight:600;color:var(--ci-g);background:#fff;border:1px solid rgba(15,59,46,.2);border-radius:999px;padding:.2em .6em;line-height:1.1;white-space:nowrap;transform-origin:0 50%;box-shadow:0 14px 30px -14px rgba(15,59,46,.5);transition:transform .6s cubic-bezier(.6,0,.2,1),opacity .6s cubic-bezier(.9,0,1,1)}
.fpline.is-landed{animation:fpLand .7s ease}
@keyframes fpLand{0%{background:rgba(79,190,134,.28)}100%{background:transparent}}
.fstep.is-leaving{animation:fpLeave .28s cubic-bezier(.6,0,.9,.4) forwards}
@keyframes fpLeave{to{opacity:0;transform:translateY(-14px)}}
.fstep.is-active:not(.is-leaving){animation:fpEnter .45s cubic-bezier(.2,.8,.2,1)}
@keyframes fpEnter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fpick-wave,.fpick-fly{display:none}.fstep.is-leaving,.fstep.is-active{animation:none}}

/* Kontakt Intro: Kennzahlen als Karten statt Haarlinien */
.fintro__facts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:0!important;padding:0!important;margin-top:2rem!important}
.fintro__facts>div{background:#fff;border:1px solid rgba(10,10,10,.06)!important;border-radius:18px;padding:16px 18px!important;box-shadow:var(--ci-card-sh)}
.fintro__facts>div+div{border-left:1px solid rgba(10,10,10,.06)!important;padding-left:18px!important}
.fintro__facts dt{color:var(--ci-g)!important}
.fintro__facts dd{color:var(--vt-fg-muted)!important}
.fintro__free i{background:var(--ci-gl)!important;box-shadow:0 0 6px rgba(79,190,134,.8)}
/* Protokoll-Karte: weicher Rahmen */
.fproto{border:1px solid rgba(10,10,10,.06)!important;box-shadow:var(--ci-card-sh)!important}
.fproto__who span{display:block;font-family:var(--vt-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--vt-fg-subtle);margin-top:3px}
.fproto__status{border-radius:999px!important}
@media (max-width:560px){.fintro__facts{gap:8px}.fintro__facts>div{padding:12px!important}}

/* Kontakt: Notizfeld */
.fnote textarea{width:100%;min-height:88px;resize:vertical;font-family:var(--vt-font-sans);font-size:var(--vt-size-base,15px);line-height:1.5;color:var(--vt-ink);background:#fff;border:1px solid var(--vt-ink-2,#1a1a1a);border-radius:14px;padding:.8rem 1rem}
.fnote textarea:focus{outline:none;border-color:var(--ci-g);box-shadow:0 0 0 3px rgba(15,59,46,.12)}
.fnote textarea::placeholder{color:var(--vt-fg-subtle)}

/* Nav-Links einzeilig in der Pille; Hero-Abstand auch für .fs-hero */
.vt-navlinks{align-items:center}
@media (min-width:1101px){.vt-navlinks a{white-space:nowrap;display:inline-flex;align-items:center;gap:.35em;line-height:1}}
.fs-hero .vt-wrap{padding-top:clamp(110px,12vw,170px)!important}
@media (max-width:1100px){.fs-hero .vt-wrap{padding-top:112px!important}}
