
:root,
:root[data-theme="light"],
:root[data-theme="dark"],
:root:not([data-theme="light"]){
  --pink:#D01C50; --pink-2:#FF4E7B; --pink-deep:#B8174A;
  --ink:#1d1a22; --ink-2:#3f3947; --mute:#6f6877;
  --ground:#fbf7fa; --panel:#ffffff; --panel-2:#f6f1f5;
  --line:#ece6ee; --line-2:#ddd4e0;
  --tint:#fdf0f4; --tint-ink:#9c1742;
  --ok:#1f9d55;
  --dia-a:#E5225A; --dia-b:#0C86B0; --dia-c:#A87516;
  --shadow:0 1px 2px rgb(29 26 34 / .05), 0 18px 50px -24px rgb(120 40 90 / .28);
  --r:16px; --r-lg:22px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --pink:#D01C50; --pink-2:#FF4E7B; --pink-deep:#B8174A;
    --ink:#1d1a22; --ink-2:#3f3947; --mute:#6f6877;
    --ground:#fbf7fa; --panel:#ffffff; --panel-2:#f6f1f5;
    --line:#ece6ee; --line-2:#ddd4e0;
    --tint:#fdf0f4; --tint-ink:#9c1742;
    --shadow:0 1px 2px rgb(29 26 34 / .05), 0 18px 50px -24px rgb(120 40 90 / .28);
    color-scheme:light;
  }
}
body{background:linear-gradient(180deg,#fbf7fa 0%,#f6f2f9 45%,#fbf6f4 100%);background-attachment:fixed}
body::before,body::after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(80px);will-change:transform}
body::before{width:560px;height:560px;top:-200px;right:-180px;background:#ff9ab8;opacity:.42;animation:hell-wandern1 20s ease-in-out infinite alternate}
body::after{width:520px;height:520px;bottom:-220px;left:-200px;background:#bda6ff;opacity:.34;animation:hell-wandern2 24s ease-in-out infinite alternate}
@keyframes hell-wandern1{to{transform:translate(-140px,120px) scale(1.12)}}
@keyframes hell-wandern2{to{transform:translate(160px,-100px) scale(1.18)}}
h1{font-size:clamp(2.3rem,6vw,4.4rem);letter-spacing:-.035em;line-height:1.02}
h2{font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.03em;line-height:1.08;text-transform:none}
.eyebrow{color:var(--pink);letter-spacing:.12em}
.lead{color:var(--mute)}
header,header#top{background:rgb(255 255 255 / .72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
header.scrolled{background:rgb(255 255 255 / .9);box-shadow:0 10px 30px -24px rgb(120 40 90 / .35)}
@media (max-width:900px){header.scrolled{background:rgb(255 255 255 / .94)}}
body.menu-offen header{background:#ffffff;border-bottom-color:var(--line)}
.mobile-nav,#mnav{background:#ffffff !important;color:var(--ink)}
.btn{border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--pink-2),var(--pink));border-color:var(--pink);
  box-shadow:0 10px 24px -10px rgb(229 34 90 / .55);position:relative;overflow:hidden}
.btn:hover{color:#fff;background:linear-gradient(135deg,var(--pink),var(--pink-deep));border-color:var(--pink-deep);transform:translateY(-2px)}
.btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgb(255 255 255 / .42),transparent);transform:skewX(-20deg);animation:hell-glanz 4s ease-in-out infinite}
@keyframes hell-glanz{0%,60%{left:-60%}100%{left:130%}}
.btn.ghost,.btn.line,.btn.sec,.btn-ghost,.btn.outline{background:#fff;color:var(--ink);border:1px solid var(--line-2);box-shadow:none}
.btn.ghost::after,.btn.line::after,.btn.sec::after,.btn-ghost::after,.btn.outline::after{display:none}
.btn.ghost:hover,.btn.line:hover,.btn.sec:hover,.btn-ghost:hover,.btn.outline:hover{background:#fff;color:var(--pink);border-color:var(--pink)}
.card,.us,.marke,.num,.br,.vs .col,.ref,.result,.nogo-col,.disziplin,.partner,.presse,form.kf{
  background:rgb(255 255 255 / .9);border-color:var(--line);box-shadow:var(--shadow)}
.card:hover,.us:hover,.marke:hover,.ref:hover{border-color:#f3a9be;box-shadow:0 22px 50px -24px rgb(229 34 90 / .45);transform:translateY(-3px)}
.card,.us,.marke,.ref{transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.card::before,.us::before,.marke::before,.ref::before{background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgb(229 34 90 / .07),transparent 70%)}
.card.feature{background:linear-gradient(145deg,#FF4E7B 0%,#E5225A 55%,#B8174A 100%);color:#fff}
.card.feature h3,.card.feature p,.card.feature .tag,.card.feature .more,.card.feature li{color:#fff}
.card.feature .ico{background:rgb(255 255 255 / .22);color:#fff}
.chip{background:rgb(255 255 255 / .85);border-color:var(--line);box-shadow:0 10px 26px -18px rgb(120 40 90 / .4)}
.blob{opacity:.5;filter:blur(80px)}
.blob.a{background:radial-gradient(circle at 30% 30%,#ff8fb0,transparent 62%)}
.blob.b{background:radial-gradient(circle at 60% 40%,#b69cff,transparent 62%)}
.blob.c{background:radial-gradient(circle at 50% 50%,#ffc9a8,transparent 64%);opacity:.45}
.gridlines{opacity:.25}
.hero h1 .swap{color:var(--pink);text-shadow:none}
.hero-art .mark{filter:drop-shadow(0 26px 50px rgb(229 34 90 / .35))}
.chat-fab{background:var(--pink);color:#fff}
.chat-fab .dot svg{stroke:#fff}
.msg.me{background:var(--pink);color:#fff}
.msg.briefing{background:var(--panel-2)}
.r-balken{background:rgb(29 26 34 / .07)}
.r-balken .bis{background:rgb(29 26 34 / .14)}
.r-balken .von{background:rgb(29 26 34 / .28)}
:root .vision-punkte div{border-top-color:var(--line-2)}
.ref .bild::after,.ref-bild::after{background:linear-gradient(180deg,transparent 55%,rgb(255 255 255 / .6) 100%)}
footer{background:rgb(255 255 255 / .7);border-top:1px solid var(--line)}
@media (prefers-reduced-motion:reduce){
  body::before,body::after,.btn::after{animation:none}
}
.hero-art .ring{border-color:rgb(229 34 90 / .38);border-width:1.5px}
.hero-art .ring.r2{border-color:rgb(29 26 34 / .22);opacity:1}
.hero-art .ring.r3{border-color:rgb(229 34 90 / .3);opacity:1}
@media (max-width:900px){
  .mobile-nav .mnav-sp a{color:var(--ink)}
  .mobile-nav .mnav-sp a:active{color:var(--pink)}
  body.menu-offen header{background:#ffffff;border-bottom-color:var(--line)}
}
.weg{background:linear-gradient(180deg,#fff7fa 0%,#f5f0f8 100%)}
.z-item .z-tag{background:var(--tint);color:var(--tint-ink)}
.btn{background:linear-gradient(135deg,#EC2C61,#D01C50)}
.btn:hover{background:linear-gradient(135deg,#D8204F,#A8123F)}
.card.feature{background:linear-gradient(145deg,#EC2C61 0%,#D81E54 55%,#B8174A 100%)}
.kurzfassung > b{color:var(--pink-deep)}
.eyebrow{color:#D01C50}
.tk-text a{color:#D01C50 !important}
.vision-inner > .eyebrow{color:#fff}
