/* EASTKAP · Wasser · Bausteine der neu gebauten Seiten (Startseite, M&A) */
:root{--paper:var(--w-paper);--white:var(--w-white);--ink:var(--w-ink);--mu:var(--w-mu);--line:var(--w-line);--deep:var(--w-deep);--petrol:var(--w-petrol);--sand:var(--w-sand);--fg:var(--w-fg);--fgm:var(--w-fgm);--pad:var(--w-pad);--hd:var(--w-hd)}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--w-sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.wrap{max-width:1380px;margin:0 auto;padding-inline:var(--pad)}
h2,h3,.serif{font-family:var(--w-serif);font-weight:400;letter-spacing:-.02em;text-wrap:balance}
main a:focus-visible,main button:focus-visible,.st:focus-visible{outline:2px solid #2f8f86;outline-offset:3px}
h2{font-size:clamp(2.1rem,4.1vw,3.8rem);line-height:1.08}
.label{display:inline-block;font-size:12.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;border:1px solid currentColor;padding:7px 12px 6px;line-height:1.2}
.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border-radius:2px;font-weight:540;font-size:15.5px;white-space:nowrap;background:var(--ink);color:var(--white);transition:transform .2s,background .2s,color .2s}
.btn:hover{transform:translateY(-2px)}
.btn.line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.btn.line:hover{background:var(--ink);color:var(--white)}
.dark .btn{background:var(--fg);color:var(--deep)}.dark .btn.line{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}.dark .btn.line:hover{background:var(--fg);color:var(--deep)}
.more{font-weight:560;font-size:15.5px;display:inline-flex;gap:8px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:3px;align-self:flex-start}.more i{font-style:normal;transition:transform .2s}a:hover .more i,.more:hover i{transform:translate(3px,-3px)}
/* Abschnitte */
.sec{padding-block:clamp(72px,9vw,140px)}
.head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px clamp(24px,5vw,90px);align-items:end;margin-bottom:clamp(30px,4vw,56px)}
.head h2{margin-top:16px}.head p{color:var(--mu);max-width:44ch}
.head .tools{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.arrow{appearance:none;cursor:pointer;width:46px;height:46px;border-radius:2px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:18px;transition:background .2s,color .2s}.arrow:hover{background:var(--ink);color:var(--white)}
/* Schwerpunkte: Karten mit Wasserband */
.areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.area{background:var(--white);border:1px solid var(--line);border-radius:3px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.area:hover{transform:translateY(-6px);box-shadow:0 30px 50px -34px rgba(10,20,22,.5)}
.band{display:block;width:100%;height:132px;object-fit:cover;filter:blur(.5px) contrast(1.08);background:var(--deep)}
.area .in{padding:24px 24px 26px;display:flex;flex-direction:column;gap:12px;flex:1}
.area h3{font-size:clamp(1.45rem,1.85vw,1.8rem);line-height:1.1}
.area p{color:#2b3839;font-size:16px;margin-bottom:8px}
.area .more{margin-top:auto}
/* Arbeitsweise: ruhige dunkle Fläche */
.dark{background:var(--petrol);color:var(--fg)}
.dark .label{color:var(--fgm)}
.work{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,6vw,110px);align-items:end}
.work h2{margin:18px 0 22px;font-size:clamp(2.3rem,4.8vw,4.6rem);line-height:1.06}
.work p{color:var(--fgm);max-width:46ch;margin-bottom:28px}
.steps{list-style:none;padding:0}.steps li{border-top:1px solid rgba(238,243,240,.28);padding:20px 0;font-family:var(--w-serif);font-weight:400;font-size:clamp(1.25rem,1.8vw,1.7rem);line-height:1.2}.steps li:last-child{border-bottom:1px solid rgba(238,243,240,.28)}
/* Entscheidungen als Karten */
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,calc((100% - 36px)/3));gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}.rail::-webkit-scrollbar{display:none}
.card{scroll-snap-align:start;background:var(--white);border:1px solid var(--line);border-radius:3px;padding:26px;display:flex;flex-direction:column;gap:14px;min-height:330px;transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-5px);box-shadow:0 26px 44px -32px rgba(10,20,22,.5)}
.card .meta{display:flex;justify-content:space-between;font-size:12.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--mu)}
.card h3{font-size:clamp(1.4rem,1.75vw,1.7rem);line-height:1.15;margin-top:10px}
.card .src{color:var(--mu);font-size:15px;margin-top:auto}
/* Ansprechpartner */
.person{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,6vw,110px);align-items:end}
.person img{display:block;width:100%;aspect-ratio:4/4.9;object-fit:cover;object-position:50% 8%;border-radius:3px}
.person h2{margin:16px 0 20px;font-size:clamp(2.6rem,5.3vw,5.2rem);line-height:1.05}
.person p{max-width:48ch;color:#2b3839;margin-bottom:18px}
.person .st{font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--mu);margin-bottom:30px;line-height:2}
/* Legal AI: wieder Wasser */
.pool{position:relative;min-height:clamp(440px,46vw,620px);background:var(--deep);color:var(--fg);overflow:hidden;display:flex;align-items:flex-end}
.pool .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,26,30,.92) 0%,rgba(5,26,30,.62) 38%,rgba(5,26,30,.1) 70%)}
.pool .wrap{position:relative;z-index:2;width:100%;padding-block:clamp(44px,6vw,88px)}
.pool h2{margin:18px 0 22px;max-width:15ch;font-size:clamp(2.3rem,4.6vw,4.4rem);line-height:1.06}
.pool p{color:var(--fgm);max-width:46ch;margin-bottom:28px}.pool .label{color:var(--fgm)}
/* Mandate */
.rows .row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px;border-top:1px solid var(--line);padding:24px 0;transition:padding .25s}
.rows .row:last-child{border-bottom:1px solid var(--line)}
.rows .row:hover{padding-left:14px}
.rows h3{font-size:clamp(1.4rem,1.9vw,1.8rem);line-height:1.12}.rows p{color:#2b3839}
/* Abschluss und Fuß */
.end{background:var(--deep);color:var(--fg)}
.cta{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,5vw,90px);align-items:end}
.cta h2{font-size:clamp(2.8rem,7vw,6.6rem);line-height:1.04}.cta h2 em{font-style:normal;color:var(--sand)}
.cta p{color:var(--fgm);margin-bottom:26px;max-width:44ch}
@media (max-width:980px){
 .head,.work,.person,.cta{grid-template-columns:1fr}.head .tools{justify-content:flex-start}
 .areas{grid-template-columns:1fr 1fr}.rail{grid-auto-columns:84%}
 .rows .row{grid-template-columns:1fr;gap:8px}.person img{max-width:420px}
}
@media (max-width:560px){.areas{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* Kurz gefasst */
.brief{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(24px,5vw,90px);align-items:start}
.brief h2{margin-top:16px}
.brief dl{border-top:1px solid var(--ink)}
.brief dl div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.brief dt,.tag,.fig b{font-size:12.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--mu)}
.brief dt{padding-top:6px}
.brief dd{font-family:var(--w-serif);font-size:clamp(1.25rem,1.75vw,1.6rem);line-height:1.25;letter-spacing:-.01em}
/* Käufer und Verkäufer */
.tabs{display:inline-flex;border:1px solid var(--ink);border-radius:2px;margin-bottom:clamp(28px,4vw,48px)}
.tabs button{appearance:none;border:0;background:transparent;font:inherit;font-weight:540;font-size:15.5px;padding:13px 24px;cursor:pointer;color:var(--ink);transition:background .2s,color .2s}
.tabs button[aria-selected="true"]{background:var(--ink);color:var(--white)}
.tabs button:focus-visible,.st:focus-visible,.onpage a:focus-visible{outline:2px solid #2f8f86;outline-offset:3px}
.side{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,90px);align-items:start}.side[hidden]{display:none}
.side h3{font-size:clamp(1.9rem,3.1vw,2.9rem);line-height:1.08;margin-bottom:18px}.side p{color:#2b3839;max-width:46ch}
.side ul{list-style:none;padding:0;border-top:1px solid var(--ink)}
.side li{padding:17px 0;border-bottom:1px solid var(--line);font-family:var(--w-serif);font-size:clamp(1.2rem,1.6vw,1.45rem);line-height:1.25}
/* Schaubild: der Ablauf als Lichtlinie */
.flow{background:var(--deep);color:var(--fg);position:relative;overflow:hidden}
.flow .head p{color:var(--fgm)}
.track{--n:6;list-style:none;padding:0;position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr))}
.track::before{content:"";position:absolute;left:0;top:9px;width:calc(100% * var(--r,var(--n)) / var(--n));height:1px;background:rgba(174,194,191,.42)}
.track::after{content:"";position:absolute;left:calc(100% * var(--r,var(--n)) / var(--n));right:0;top:9px;height:1px;background:repeating-linear-gradient(90deg,rgba(174,194,191,.5) 0 6px,transparent 6px 12px)}
.glow{list-style:none;position:absolute;left:0;top:8px;height:3px;width:var(--p,83.33%);background:linear-gradient(90deg,rgba(159,211,201,.15),#9fd3c9);box-shadow:0 0 14px rgba(159,211,201,.55);transition:width .6s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.st{position:relative;padding:44px 26px 0 0;outline-offset:6px}
.st::before{content:"";position:absolute;left:0;top:0;width:1px;height:19px;background:var(--fgm);transition:background .3s,height .3s,box-shadow .3s}
.st.on::before{background:#9fd3c9;box-shadow:0 0 10px rgba(159,211,201,.8)}
.st h3{font-size:clamp(1.25rem,1.55vw,1.5rem);line-height:1.15;min-height:2.3em;margin-bottom:10px;transition:color .3s}
.st p{font-size:15px;line-height:1.5;color:var(--fgm)}
.st:not(.on) h3{color:#b9c9c6}
/* Schaubild: wer was übernimmt */
.fig{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);border:1px solid var(--ink);border-radius:3px;overflow:hidden;margin-top:clamp(30px,4vw,56px)}
.fig>div{padding:clamp(22px,3vw,40px)}
.fig .own{background:var(--petrol);color:var(--fg)}.fig .own b{color:var(--fgm)}
.fig b{display:block;margin-bottom:18px}
.fig ul{list-style:none;padding:0}.fig li{font-family:var(--w-serif);font-size:clamp(1.2rem,1.6vw,1.45rem);line-height:1.25;padding:13px 0;border-top:1px solid var(--line)}
.fig .own li{border-color:rgba(238,243,240,.24)}
.fig small{display:block;margin-top:18px;font-size:14.5px;color:var(--mu)}.fig .own small{color:var(--fgm)}
.note{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(24px,5vw,90px);border-top:1px solid var(--line);margin-top:clamp(30px,4vw,56px);padding-top:26px}
.note b{font-size:12.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--mu)}.note p{color:#2b3839;font-size:15.5px;max-width:66ch}
.rows .tag{display:block;margin-top:10px}
.next{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.next .card{min-height:290px}
@media (max-width:980px){
 .brief,.side,.fig,.note{grid-template-columns:1fr}.brief dl div{grid-template-columns:1fr;gap:6px}.next{grid-template-columns:1fr}
 .track{grid-template-columns:1fr;gap:26px}.track::before{left:0;top:0;bottom:0;width:1px;height:auto}.track::after,.glow{display:none}
 .st{padding:0 0 0 30px}.st h3{min-height:0}.st::before{top:13px;width:17px;height:1px}.st:not(.on) h3{color:inherit}
}

/* Wasser in Karten und Flächen */
.band.w-water{position:static;inset:auto;height:132px}
.pool .w-water{z-index:0}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
main{display:block}
.pad-b{padding-bottom:clamp(72px,9vw,140px)}.rel{position:relative}
