:root{--red:#81223c;--ink:#222d28;--muted:#606c64;--paper:#f4f1e9;--line:#d8d8cb;--max:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:6px}.wrap{width:calc(100% - 112px);max-width:var(--max);margin:auto}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:15px}.skip:focus{top:10px}header{position:sticky;top:0;z-index:50;background:rgba(26,40,32,.97);color:#f4f1e9;backdrop-filter:blur(16px);border-bottom:1px solid #ffffff20}.nav{height:108px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:20px;flex-shrink:0}.brand img{width:74px;height:70px;object-fit:contain;background:#fff;padding:3px}.brand span{font-size:11px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}nav{display:flex;gap:28px;align-items:center}nav a{font-size:13px;position:relative;padding:10px 0}nav a:hover,nav a[aria-current]{color:#e3adbb}nav a:last-child{border:1px solid #ffffff55;padding:10px 22px}nav a:last-child:hover{background:var(--red);border-color:var(--red);color:white}.menu-toggle{display:none}h1,h2,h3,.stat{font-family:"Bodoni MT","Didot","Times New Roman",serif;font-weight:400}h1{font-size:clamp(60px,7.5vw,116px);line-height:.98;letter-spacing:-.055em;margin:30px 0}h2{font-size:clamp(38px,4.3vw,68px);line-height:1.08;letter-spacing:-.04em;margin:20px 0 28px}h3{font-size:34px;line-height:1.15;margin:0 0 22px}p{margin:0 0 22px}.eyebrow,.kicker{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:600;color:var(--red)}.lead{font-size:18px;color:var(--muted);max-width:610px;line-height:1.75}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:var(--red);color:white;padding:15px 22px;font-size:13px;transition:background .25s,transform .25s}.btn:after{content:'↗';font-size:20px}.btn:hover{background:#552132;transform:translateY(-3px)}.btn.ghost{background:transparent;border-bottom:1px solid currentColor;color:var(--ink);padding-left:0;padding-right:0}.actions{display:flex;gap:26px;align-items:center;margin-top:30px;flex-wrap:wrap}section{padding:120px 0}.hero{position:relative;padding:65px 0 75px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:start}.hero-grid>div:first-child{position:relative;z-index:2;padding-top:24px}.hero h1{font-size:clamp(75px,9.2vw,147px);margin:45px -140px 32px 0;line-height:.92}.hero h1 span{margin-left:8vw}.hero h1 em{display:block;color:var(--red);font-weight:400;margin-left:2vw}.hero .lead{max-width:430px;font-size:16px}.hero-photo{padding-top:68px;position:relative}.hero-photo img{width:100%;height:630px;object-fit:cover;object-position:58% center;filter:saturate(.65)}.photo-caption{font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-top:18px;text-align:right}.section-head{display:flex;justify-content:space-between;gap:70px;align-items:end;margin-bottom:65px}.section-head>p{max-width:340px;font-size:15px}.dark{background:#e6e9df;color:var(--ink)}.dark .eyebrow{color:var(--red)}.dark p{color:var(--muted)}.grid3{display:flex;flex-direction:column;border-top:1px solid #b5bdae}.service{display:grid;grid-template-columns:1.15fr 1fr 1fr auto;gap:40px;align-items:start;padding:46px 0;border-bottom:1px solid #b5bdae;transition:padding .3s}.service:hover{padding-left:12px}.service h3{font-size:clamp(30px,3.5vw,52px);margin:0}.service p{font-size:14px;margin:0}.service ul{list-style:none;padding:0;margin:0;font-size:13px;color:var(--muted)}.service li{margin-bottom:6px}.service-link{font-size:35px;line-height:1}.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.stat{font-size:clamp(110px,17vw,245px);line-height:.8;letter-spacing:-.07em;color:var(--red)}.copy{font-size:20px;max-width:650px;color:var(--muted)}.paper{background:#e8e4dc}.teamgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.person{min-width:0}.photo-placeholder{height:auto;aspect-ratio:3/4;background:#dedcd3;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px;margin-bottom:30px;color:#66675f;font-size:10px;letter-spacing:.15em;text-transform:uppercase;overflow:hidden;transition:background .4s}.person:hover .photo-placeholder{background:#d4d0c5}.portrait-symbol{width:65px;height:65px;border:1px solid #94948b;border-radius:50%;position:relative;margin-bottom:65px}.portrait-symbol:after{content:'';position:absolute;top:83px;left:-27px;width:117px;height:60px;border:1px solid #94948b;border-radius:70px 70px 0 0;border-bottom:0}.person h3{font-size:31px;margin-bottom:12px}.person p{font-size:13px;color:var(--muted)}.tag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--red)}.banner{background:#81223c;color:#f4f1e9;padding:100px 0}.banner .eyebrow{color:#edc2ce}.banner .btn{background:#f4f1e9;color:var(--red)}.bannerbox{display:flex;justify-content:space-between;align-items:end;gap:60px;border-top:1px solid var(--line);padding-top:60px}.bannerbox>div{max-width:790px}.bannerbox .btn{flex-shrink:0}.pagehero{padding:90px 0 100px;position:relative;background:#222f27;color:#f4f1e9}.pagehero .eyebrow{color:#e3adbb}.pagehero .lead,.pagehero .hero-note{color:#d0d5ca}.pagehero h1{max-width:1080px}.pagehero .content{max-width:var(--max)}.pagehero h1{max-width:1080px}.pagehero .lead{margin-left:32%;max-width:660px}.hero-note{text-align:right;font-size:11px;letter-spacing:.1em;color:var(--muted);margin-top:50px}.content{max-width:900px}.content h2{font-size:40px;margin-top:55px}.content h2:first-child{margin-top:0}.content h3{font-size:28px;margin-top:35px}.content p,.content li{color:var(--muted)}.content ul{padding-left:20px}.practice .content{max-width:1050px}.practice ul{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;column-gap:70px;margin:40px 0 60px}.practice li{padding:17px 0;border-bottom:1px solid var(--line);font-family:"Times New Roman",serif;font-size:25px}.wide-photo{margin:0;padding:50px 56px 0}.wide-photo img{width:100%;height:480px;object-fit:cover;object-position:center 45%;filter:saturate(.65)}.locations{display:grid;grid-template-columns:1fr 1fr;gap:100px}.location{border-top:1px solid var(--ink);padding-top:35px}.location h3{font-size:43px}.location p{color:var(--muted)}.location a[href^=mailto]:hover{text-decoration:underline}.contact-info{margin-top:80px;border-top:1px solid var(--line);padding-top:35px}.contact-info h2{font-size:28px}.contact-info p{font-size:14px}footer{background:#262922;color:#ecece4;padding:80px 0}.foot{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px}.foot img{width:85px;background:white;padding:5px;margin-bottom:25px}.foot p{font-size:13px;color:#c4c8bc;margin-top:18px}.foot strong{font-size:14px;font-weight:500}.foot small{color:#acb0a5}.footlinks{display:flex;gap:25px;font-size:12px;margin-top:30px}.foot a:hover{color:white;text-decoration:underline}.page-datenschutz .content,.page-impressum .content{max-width:850px}.page-team .teamgrid{gap:45px}.page-team .photo-placeholder{aspect-ratio:3/4}.page-team .paper{padding-top:75px}.is-visible{animation:arrive .7s both}@keyframes arrive{from{opacity:.35;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(min-width:1700px){.hero h1{font-size:150px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}nav{gap:17px}nav a{font-size:12px}.brand span{display:none}.hero-photo img{height:560px}.hero h1{font-size:10vw}.service{gap:25px}.teamgrid{gap:20px}.foot{gap:40px}}
@media(max-width:850px){.nav{height:85px}.brand span{display:block}.brand img{width:58px;height:58px}.menu-toggle{display:flex;align-items:center;gap:15px;border:0;background:transparent;color:#f4f1e9;padding:14px 0;cursor:pointer;font-size:12px}.menu-toggle i{display:block;width:23px;height:9px;border-top:1px solid;border-bottom:1px solid}.menu-toggle[aria-expanded=true] i{height:0;transform:rotate(-45deg)}nav{display:none;position:absolute;top:85px;left:0;width:100%;background:#1a2820;padding:25px 32px 35px;border-bottom:1px solid var(--line);max-height:calc(100dvh - 85px);overflow:auto}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{font-family:"Times New Roman",serif;font-size:28px;padding:10px 0}nav a:last-child{margin-top:15px;text-align:center;font-size:23px}.hero{padding-top:30px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(75px,14vw,120px);margin-right:0}.hero h1 span{margin-left:14vw}.hero h1 em{margin-left:5vw}.hero .lead{max-width:560px}.hero-photo{padding-top:25px;margin-left:18%}.hero-photo img{height:480px}.section-head{gap:30px;align-items:start}.section-head>p{max-width:280px}.service{grid-template-columns:1fr 1fr}.service ul{grid-column:2}.service-link{grid-column:1;grid-row:2}.split{gap:40px;grid-template-columns:.75fr 1.25fr}.teamgrid{grid-template-columns:1fr 1fr;gap:45px 30px}.bannerbox{display:block}.bannerbox .btn{margin-top:20px}.foot{grid-template-columns:1fr 1fr;gap:40px}.foot>div:first-child{grid-column:1/-1}.locations{gap:40px}.pagehero h1{font-size:70px}.pagehero .lead{margin-left:15%}section{padding:85px 0}.wide-photo{padding:35px 32px 0}.page-team .teamgrid{gap:40px 30px}}
@media(max-width:540px){.wrap{width:calc(100% - 40px)}.nav{gap:15px}.brand{gap:12px}.brand span{font-size:9px}.hero-grid>div:first-child{padding-top:10px}.hero h1{font-size:clamp(65px,17vw,92px);margin-top:28px}.hero h1 span{margin-left:9vw}.hero h1 em{margin-left:3vw}.hero .lead{font-size:15px}.hero-photo{margin-left:9%;padding-top:20px}.hero-photo img{height:350px}.photo-caption{font-size:9px;letter-spacing:.04em}.actions{gap:20px}.btn{gap:22px;padding:13px 18px;font-size:12px}.section-head{display:block;margin-bottom:35px}.section-head>p{max-width:none}.section-head .btn{margin-top:10px}.service{grid-template-columns:1fr auto;gap:20px;padding:30px 0}.service h3{font-size:36px}.service p{grid-column:1/-1}.service ul{grid-column:1}.service-link{grid-column:2;grid-row:1}.split{grid-template-columns:1fr;gap:60px}.stat{font-size:140px}.copy{font-size:18px}.teamgrid,.page-team .teamgrid{grid-template-columns:1fr;gap:50px}.photo-placeholder{aspect-ratio:4/4.3}.person h3{font-size:34px}.person p{font-size:15px}.locations{grid-template-columns:1fr;gap:60px}.location h3{font-size:36px}.foot{grid-template-columns:1fr;gap:35px}.foot>div:first-child{grid-column:auto}.pagehero{padding:50px 0}.pagehero h1{font-size:clamp(47px,12vw,64px);overflow-wrap:break-word}.pagehero .lead{margin-left:0;font-size:16px}.hero-note{margin-top:30px;font-size:10px}.content h2{font-size:32px}.practice ul{grid-template-columns:1fr;gap:0;margin:30px 0 45px}.practice li{font-size:24px}.wide-photo{padding:25px 20px 0}.wide-photo img{height:280px}section{padding:65px 0}.banner{padding:60px 0}footer{padding:60px 0}.contact-info{margin-top:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.cinematic{background:#192d23;color:#f4f1e9;min-height:calc(100svh - 108px);padding:58px 0 84px;display:flex;flex-direction:column;justify-content:center;isolation:isolate}.cinematic:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,28,21,.95) 0%,rgba(13,28,21,.82) 37%,rgba(13,28,21,.1) 85%),url('kanzlei.jpg') center 44%/cover}.cinematic .hero-grid{display:block;width:calc(100% - 112px)}.cinematic .hero-grid>div:first-child{padding:0;max-width:800px}.cinematic .hero-photo{display:none}.cinematic h1{font-size:clamp(78px,8.2vw,136px);margin:26px 0 30px;line-height:.88}.cinematic h1 span{margin-left:0}.cinematic h1 em{display:inline;color:#e4a8b8;margin-left:0}.cinematic .eyebrow{color:#e8b8c5}.cinematic .lead{color:#e1e6da;max-width:510px;font-size:16px}.cinematic .btn{background:#f4f1e9;color:#222d28}.cinematic .btn.ghost{background:transparent;color:#f4f1e9}.hero-bottom{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;position:absolute;bottom:28px;left:0;right:0;color:#d3d9ca}.hero-bottom a{display:flex;gap:15px}.hero-bottom a span{font-size:18px;line-height:1}.page-kanzlei .wide-photo{background:#222f27;padding-bottom:50px}.page-karriere .pagehero h1{max-width:1000px}.page-team .pagehero{background:#e8e4dc;color:var(--ink)}.page-team .pagehero .eyebrow{color:var(--red)}.page-team .pagehero .lead,.page-team .pagehero .hero-note{color:var(--muted)}.page-datenschutz .pagehero,.page-impressum .pagehero{background:#e6e9df;color:var(--ink)}.page-datenschutz .pagehero .eyebrow,.page-impressum .pagehero .eyebrow{color:var(--red)}.page-datenschutz .pagehero .lead{color:var(--muted)}.service-link{color:var(--red)}.service:hover h3{color:var(--red)}.is-visible{animation:none}.hero-grid.reveal{animation:none}
@media(max-width:1100px){.cinematic .hero-grid{width:calc(100% - 64px)}}
@media(max-width:850px){.cinematic{min-height:calc(100svh - 85px);padding:50px 0 88px}.cinematic .hero-grid{width:calc(100% - 64px)}.cinematic h1{font-size:clamp(72px,11vw,114px)}.cinematic:before{background:linear-gradient(90deg,rgba(13,28,21,.93),rgba(13,28,21,.48)),url('kanzlei.jpg') 60% center/cover}}
@media(max-width:540px){.cinematic{min-height:calc(100svh - 85px);padding:45px 0 90px}.cinematic .hero-grid{width:calc(100% - 40px)}.cinematic h1{font-size:clamp(62px,17vw,88px);margin:28px 0}.cinematic .lead{font-size:15px}.hero-bottom{font-size:9px;letter-spacing:0}.hero-bottom>a{gap:8px}.hero-bottom>span{max-width:175px}.pagehero{padding:65px 0}.bannerbox{border-color:#ffffff40}}
@media(max-height:700px) and (min-width:851px){.cinematic{padding:45px 0 85px}.cinematic h1{font-size:clamp(68px,11vh,94px)}.cinematic .lead{font-size:15px;line-height:1.6}}

/* A viewport-fixed image layer remains still while the document scrolls. */
body{background:#192d23;isolation:isolate}
.fixed-estate{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#192d23}
.fixed-estate img{width:100%;height:100%;object-fit:cover;object-position:center 44%}
.fixed-estate:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,28,21,.92) 0%,rgba(13,28,21,.76) 37%,rgba(13,28,21,.12) 85%)}
.cinematic{background:transparent;isolation:auto}.cinematic:before{display:none}
main>section:not(.cinematic):not(.pagehero):not(.banner){background:rgba(244,241,233,.88)}
main>.dark{background:rgba(230,233,223,.88)!important}
main>.paper{background:rgba(232,228,220,.88)!important}
.banner{background:rgba(129,34,60,.9)}
.pagehero{background:transparent}
.page-team .pagehero,.page-datenschutz .pagehero,.page-impressum .pagehero{background:rgba(232,228,220,.9)}
.page-kanzlei .wide-photo{background:rgba(34,47,39,.88)}
footer{background:rgba(26,40,32,.93)}
@media(max-width:850px){.fixed-estate img{object-position:60% center}.fixed-estate:after{background:linear-gradient(90deg,rgba(13,28,21,.9),rgba(13,28,21,.46))}}

/* Original team photographs, consistently sized with the remaining placeholder. */
.team-photo{aspect-ratio:3/4;margin-bottom:30px;overflow:hidden;background:#dedcd3}.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%}@media(max-width:540px){.team-photo{aspect-ratio:4/4.3}}

/* Align specialty labels across each team row regardless of biography length. */
.person{display:flex;flex-direction:column}.person .team-photo,.person .photo-placeholder{flex-shrink:0}.person .tag{margin-top:auto;padding-top:12px}
