/* Approved homepage portrait and employment slide. */
.hero-slide-kanzlei.hero-with-portrait { background:#0a1825; }
.hero-slide-kanzlei.hero-with-portrait::before {
  background:linear-gradient(110deg,#12283a 0%,#102334 46%,#09131e 100%);
}
.hero-portrait {
  position:absolute;
  inset:0 0 0 auto;
  width:59%;
  z-index:-1;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 31%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 31%,#000 100%);
}
.hero-portrait img {
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:56% 8%;
}
.hero-portrait::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#11283a 0%,transparent 13%,transparent 89%,#0d1d2b55 100%);
}
@media(min-width:1600px) {
  .hero-portrait { width:56%; }
  .hero-portrait img { object-position:56% 8%; }
}
@media(min-width:761px) and (max-width:1100px) {
  .hero-portrait { width:60%; }
  .hero-portrait img { object-position:57% 6%; }
}
@media(max-width:760px) {
  .law-hero.hero-carousel {
    grid-template-rows:minmax(760px,calc(100svh - 110px)) 145px;
  }
  .hero-portrait {
    inset:430px 0 0;
    width:100%;
    -webkit-mask-image:linear-gradient(0deg,#000 0%,#000 78%,transparent 100%);
    mask-image:linear-gradient(0deg,#000 0%,#000 78%,transparent 100%);
  }
  .hero-portrait img { object-position:55% 12%; }
  .hero-portrait::after { background:linear-gradient(0deg,#11283a 0%,transparent 16%); }
}
.law-page.high-contrast .hero-portrait { display:none; }
.hero-slide-arbeitsrecht::before {
  background:linear-gradient(112deg,#172e40,#142b3c 58%,#223b4c);
}
.is-active .layer-employment-connection .illustration-motion {
  animation:employment-lines 7s ease-in-out infinite alternate;
}
@keyframes employment-lines {
  from { transform:translate3d(-3px,2px,0); }
  to { transform:translate3d(3px,-2px,0); }
}
.hero-carousel.motion-held .layer-employment-connection .illustration-motion {
  animation-play-state:paused;
}
@media(prefers-reduced-motion:reduce) {
  .layer-employment-connection .illustration-motion { animation:none!important; }
}

/* Light editorial timeline: every step title remains visible. */
.home-process.process-timeline{position:relative;padding:0;background:#f7f5f0;color:#193247;overflow:visible}
.timeline-stage{position:relative;display:grid;grid-template-columns:46% 54%;align-items:stretch}
.timeline-visual{position:relative;background:#ece7df;min-height:780px;overflow:hidden;isolation:isolate}
.timeline-visual-header{position:absolute;left:10%;right:10%;top:54px;z-index:3;display:flex;justify-content:space-between;font:9px/1.5 'Manrope',sans-serif;letter-spacing:.16em;color:#756e63}
.timeline-visual-title{position:absolute;left:10%;bottom:55px;z-index:3;font:10px/1.5 'Manrope',sans-serif;letter-spacing:.16em;color:#566b77}
.timeline-visual-numbers{position:absolute;inset:0;pointer-events:none}
.timeline-visual-number{position:absolute;left:2%;top:6%;font-family:'Caslon Display',Georgia,serif;font-size:clamp(200px,29vw,480px);line-height:1;color:#244154;opacity:0;transition:opacity .4s;letter-spacing:-.065em;transform:translate3d(0,var(--number-shift,0px),0)}
.timeline-visual-number.is-current{opacity:.075}
.timeline-art{position:absolute;width:112%;left:-6%;height:80%;top:12%;opacity:0;transform:translate3d(0,var(--art-shift,0px),0);transition:opacity .45s;pointer-events:none}
.timeline-art.is-current{opacity:1}
.timeline-art svg{display:block;width:100%;height:100%;overflow:visible}
.timeline-content{padding:52px clamp(32px,5.4vw,100px) 48px}
.timeline-kicker{margin:0 0 24px;font-size:9px;line-height:1.7;letter-spacing:.16em;color:#8a644b;text-transform:uppercase}
.law-page .process-timeline h2{font:400 clamp(46px,4.5vw,72px)/1.045 'Caslon Display',Georgia,serif;letter-spacing:-.025em;margin:0 0 38px}
.timeline-panels{list-style:none;margin:0;padding:0;min-width:0}
.timeline-panel{position:relative;padding:0;margin:0}
.law-page .process-timeline .timeline-panel h3{font:400 clamp(23px,2.05vw,31px)/1.15 'Caslon Display',Georgia,serif;letter-spacing:-.015em;margin:0;min-height:0;overflow-wrap:normal}
.timeline-choice{display:grid;grid-template-columns:35px minmax(0,1fr);gap:23px;align-items:baseline;text-align:left;width:100%;min-height:58px;padding:14px 0;border:0;background:transparent;color:#6e7c80;font:inherit;letter-spacing:inherit;cursor:pointer;transition:color .25s}
.timeline-choice .timeline-index-num{font-size:23px;color:#8f9a9d;font-variant-numeric:tabular-nums}
.timeline-enhanced .timeline-choice[aria-pressed=true]{color:#193247}
.timeline-enhanced .timeline-choice[aria-pressed=true] .timeline-index-num{color:#976b49}
.timeline-choice:focus-visible{outline:2px solid #8a644b;outline-offset:4px}
.timeline-choice:disabled{cursor:default;opacity:1;color:#193247}
.timeline-detail{padding:4px 0 20px 58px}
.timeline-detail[hidden]{display:none!important}
.timeline-detail p{margin:0;font-size:13px;line-height:1.95;color:#4c606c;max-width:420px}
.timeline-enhanced{height:330svh}
.timeline-enhanced .timeline-stage{position:sticky;top:0;height:100svh;min-height:620px}
.timeline-enhanced .timeline-visual{min-height:0}
.timeline-enhanced .timeline-content{display:flex;flex-direction:column;justify-content:center}
.timeline-enhanced .timeline-detail{animation:timeline-description-enter .38s ease both}
@keyframes timeline-description-enter{from{opacity:0;transform:translate3d(0,7px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
/* Every title and description reads in normal document order on narrow screens. */
.process-timeline:not(.timeline-enhanced) .timeline-stage{grid-template-columns:minmax(0,1fr)}
.process-timeline:not(.timeline-enhanced) .timeline-visual{min-height:0;height:300px}
.process-timeline:not(.timeline-enhanced) .timeline-visual-number{font-size:300px;top:-15%;left:5%}
.process-timeline:not(.timeline-enhanced) .timeline-art{width:75%;left:28%;height:150%;top:-25%}
.process-timeline:not(.timeline-enhanced) .timeline-visual-header{top:32px;left:7%;right:7%}
.process-timeline:not(.timeline-enhanced) .timeline-visual-title{bottom:30px;left:7%}
.process-timeline:not(.timeline-enhanced) .timeline-content{padding:68px max(24px,6vw) 45px}
.process-timeline:not(.timeline-enhanced) .timeline-panel{padding:20px 0}
.process-timeline:not(.timeline-enhanced) .timeline-choice{font-size:30px;grid-template-columns:42px minmax(0,1fr);gap:20px;padding:0 0 20px;line-height:1.15}
.process-timeline:not(.timeline-enhanced) .timeline-index-num{font-size:34px;color:#976b49}
.process-timeline:not(.timeline-enhanced) .timeline-detail{padding:0 0 10px 62px}
.process-timeline:not(.timeline-enhanced) .timeline-detail p{font-size:14px;max-width:580px}
@media(min-width:1600px){.timeline-content{padding-left:90px;padding-right:90px}.timeline-detail p{font-size:15px}.timeline-choice{min-height:66px}}
@media(max-width:1100px){.timeline-content{padding-left:34px;padding-right:34px}.timeline-choice{gap:16px}.timeline-detail{padding-left:51px}}
@media(max-width:760px){.process-timeline .timeline-visual{display:none}.law-page .process-timeline h2{font-size:clamp(44px,10vw,65px);margin-bottom:25px}.timeline-kicker{margin-bottom:23px}.process-timeline:not(.timeline-enhanced) .timeline-choice{font-size:28px}.timeline-detail p{line-height:1.85}}
.law-page.high-contrast .process-timeline{background:#fff;color:#071b2b}.law-page.high-contrast .process-timeline p{color:inherit}.law-page.high-contrast .timeline-choice{color:#071b2b}
@media(prefers-reduced-motion:reduce){.process-timeline *{transition:none!important;animation:none!important}.timeline-art,.timeline-visual-number{transform:none!important}}
