/* Explicit, URL-based language choice. No browser-language redirect or prompt. */
.language-options{display:flex;flex-direction:column;gap:3px;margin-left:-12px;flex-shrink:0}
header nav .language{display:flex!important;align-items:center;justify-content:center;width:34px;height:25px;border:1px solid var(--gold,#aa906b);color:#111;font:10px/1 'Roboto Mono',monospace;letter-spacing:.06em;background:#fff;text-decoration:none}
header nav .language.active{background:var(--gold,#aa906b);color:#fff}
header nav .language:hover{background:var(--gold,#aa906b);color:#fff;border:1px solid var(--gold,#aa906b)}
.language:focus-visible{outline:2px solid #111;outline-offset:2px}
html:not([lang=en]) header nav{gap:22px;font-size:11px}
html:not([lang=en]) .hero h1{font-size:clamp(32px,5.6vw,80px)}
html:not([lang=en]) .hero-content{max-width:none}
html:not([lang=en]) .hero .intro{max-width:850px}
html:not([lang=en]) .experience .insiders-heading{font-size:clamp(30px,3.6vw,54px)}
html:not([lang=en]) .contact h2{font-size:clamp(30px,4.8vw,70px)}
html:not([lang=en]) .staff-row{column-gap:18px}
html:not([lang=en]) .policy-hero h1{overflow-wrap:anywhere}
@media(max-width:1100px){html:not([lang=en]) header nav{gap:16px;font-size:10px}.language-options{margin-left:0}}
@media(max-width:700px){header .language-options{margin-left:0}header nav,html:not([lang=en]) header nav{gap:14px}html:not([lang=en]) .hero h1{font-size:clamp(27px,7vw,48px)}html:not([lang=en]) .experience .insiders-heading{font-size:clamp(32px,8vw,48px)}html:not([lang=en]) .hero .intro{font-size:16px}html:not([lang=en]) .contact h2{font-size:30px}}
@media(max-width:700px){
 .policy-page header{min-height:95px;flex-wrap:nowrap;gap:14px;padding:7px 6%}
 .policy-page header nav{flex-wrap:nowrap;gap:14px}
 .policy-page header nav>a:not(.contact-nav){display:none}
 html:not([lang=en]) .policy-hero h1{font-size:clamp(24px,7vw,40px);overflow-wrap:normal}
}
@media(max-width:350px){header .brand img{width:115px}.policy-page header .brand img{width:115px}header .contact-nav{padding:11px 12px}header nav,html:not([lang=en]) header nav{gap:10px}}
@media(max-width:700px){html:not([lang=en]) .hero h1{font-size:clamp(22px,6.6vw,44px)}html:not([lang=en]) #approach h2,html:not([lang=en]) #clients>h2{font-size:clamp(25px,6.6vw,42px)}}
/* Six choices keep the original three-row rhythm rather than doubling header height. */
.language-options{display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,25px);grid-template-columns:repeat(2,34px);gap:3px}
header nav a.contact-nav:hover,header nav a.contact-nav:focus-visible{background:var(--gold,#aa906b);color:#fff;border-color:var(--gold,#aa906b)}
header nav a.contact-nav{transition:background-color .18s,color .18s,border-color .18s}
html[lang=de] .hero h1{font-size:clamp(26px,4.7vw,70px);overflow-wrap:normal;hyphens:auto}
@media(min-width:701px){
 html:not([lang=en]) .insiders-below{grid-template-columns:minmax(0,1.15fr) minmax(0,1.65fr);gap:clamp(32px,5vw,70px);align-items:start}
 html:not([lang=en]) .insiders-left p{font-size:clamp(15px,1.3vw,18px);line-height:1.6}
 html:not([lang=en]) .experience .team{justify-content:flex-start;gap:30px}
 html:not([lang=en]) .insiders-left p+p{margin-top:24px}
}
@media(max-width:1100px) and (min-width:701px){html:not([lang=en]) header nav{gap:12px;font-size:10px}header .language-options{margin-left:0}}
@media(max-width:700px){html[lang=de] .hero h1{font-size:clamp(21px,5.7vw,40px)}html[lang=de] .policy-hero h1{font-size:clamp(22px,6vw,38px)}}

@media(min-width:701px){html:not([lang=en]) #approach .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%}html:not([lang=en]) #approach h2{overflow-wrap:anywhere;hyphens:auto}}
html:not([lang=en]) #approach .split>*{min-width:0;overflow-wrap:anywhere;hyphens:auto}
@media(max-width:700px){html:not([lang=en]) #approach .split{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){#approach .split{grid-template-columns:minmax(0,1fr)}#approach .split>*{min-width:0;overflow-wrap:anywhere}}
.policy-copy h2{overflow-wrap:anywhere;hyphens:auto}
html[lang=de] .policy-hero h1 span{display:block}
@media(max-width:700px){html[lang=de] .policy-hero h1{font-size:clamp(21px,6vw,38px);overflow-wrap:anywhere}}
/* Optical alignment: Sweet Gothic's leading sidebearing exceeds the body font's.
   Preserve layout widths and wrapping; scale the correction with heading size. */
.hero h1{position:relative;left:-.065em}
#approach h2,.experience .insiders-heading,.roster-heading h2,.contact h2,
.policy-hero h1,.policy-copy h2{position:relative;left:-.075em}
.experience .team h3{position:relative;left:-.065em}
