/* A visible language choice on every page, including compact navigation. */
.header{gap:20px}
.brand{flex:none}
.header #navigation{margin-left:auto;gap:clamp(18px,2vw,32px)}
.header #navigation a{white-space:nowrap}
.language-switcher{display:flex;align-items:center;flex:none;gap:2px;border-left:1px solid var(--rule);padding-left:13px}
.language-switcher a{display:flex;align-items:center;justify-content:center;min-width:34px;min-height:44px;padding:8px 5px;font-family:Manrope,Arial,sans-serif;font-size:.75rem;font-weight:650;line-height:1;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.language-switcher a:hover{color:var(--blue-ink);border-bottom-color:var(--brand)}
.language-switcher a[aria-current=page]{color:var(--blue-ink);border-bottom-color:var(--brand)}
.language-switcher a:focus-visible{outline-offset:2px}
html[lang=en] .hero h1{font-size:clamp(3rem,5.2vw,5.5rem)}
html[lang=de] .hero h1{font-size:clamp(2.5rem,4.35vw,4.75rem)}
html[lang=en] .decision-word{font-size:175px;letter-spacing:-12px}
html[lang=de] .decision-word{font-size:200px;letter-spacing:-12px}
html[lang=de] .service h3{overflow-wrap:anywhere}
html[lang=de] .process-steps h3{font-size:clamp(1.2rem,1.65vw,1.75rem)}
.service-detail>div,.process-steps li,.process-steps li>div{min-width:0}
@media(max-width:1280px){
  .header{min-height:88px;flex-wrap:wrap;gap:0 16px}
  .brand img{width:157px;height:59px}
  .language-switcher{margin-left:auto}
  .menu-toggle{display:flex}
  .header #navigation{display:none;order:3;width:100%;margin-left:0;padding:13px 0 26px;flex-direction:column;align-items:stretch;gap:0}
  .header #navigation.is-open{display:flex}
  .header #navigation a{padding:15px 0;border-top:1px solid var(--rule);font-size:1rem}
  .header #navigation .nav-contact{margin-top:8px;padding:16px 20px;border:0}
}
@media(max-width:820px){
  html[lang=en] .hero h1{font-size:clamp(2.125rem,7.4vw,4.25rem)}
  html[lang=de] .hero h1{font-size:clamp(1.875rem,5.7vw,3.5rem)}
  html[lang=de] .process-steps h3{font-size:clamp(1.25rem,3vw,1.625rem)}
  html[lang=en] .expertise-heading h2 br:first-child,html[lang=de] .expertise-heading h2 br:first-child{display:initial}
}
@media(max-width:600px){
  .menu-label{display:none}
  .menu-toggle{padding:8px;min-width:40px;min-height:44px;justify-content:center}
  .header{gap:0 8px}
  .language-switcher{border:0;padding-left:0}
}
@media(max-width:520px){
  .brand img{width:122px;height:52px}
  .language-switcher a{min-width:30px;padding-inline:4px;font-size:.6875rem}
  html[lang=en] .hero h1{font-size:8.5vw}
  html[lang=de] .hero h1{font-size:7.2vw}
  html[lang=de] .process-steps h3{font-size:1.6rem}
  html[lang=de] .intro h2{font-size:6.3vw}
  html[lang=de] .hero-copy .button{gap:16px;max-width:100%}
}
