:root{color-scheme:dark;--bg:#050505;--fg:#fff;--muted:#aaa;--line:#333;--pad:clamp(1.25rem,4vw,4.5rem);font-family:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-size:1rem;line-height:1.5}
a{color:inherit;text-decoration:none}
a:hover,a:focus-visible{text-decoration:underline;text-underline-offset:.35em}
button{font:inherit}
[data-en]{display:none}
html[lang="en"] [data-de]{display:none}
html[lang="en"] [data-en]{display:inline}
.skip-link{position:fixed;top:-5rem;left:1rem;z-index:10;background:#fff;color:#000;padding:.75rem 1rem}
.skip-link:focus{top:1rem}
.site-header{position:relative;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.4rem var(--pad);border-bottom:1px solid var(--line)}
.brand img{display:block;width:clamp(11rem,18vw,14.5rem);height:auto}
.header-actions{display:flex;align-items:center;gap:clamp(1rem,3vw,2.5rem);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}
.language-switch{display:flex;gap:.35rem;align-items:center}
.language-switch button{padding:.2rem;background:none;color:var(--muted);border:0;cursor:pointer}
.language-switch button[aria-pressed="true"]{color:#fff;text-decoration:underline;text-underline-offset:.35em}
.hero{min-height:calc(100vh - 72px);display:grid;grid-template-rows:auto 1fr auto;padding:clamp(2.5rem,7vw,7rem) var(--pad) 2rem}
.eyebrow,.section-number,.label{margin:0;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.16em}
.hero h1{align-self:center;margin:2rem 0;font-size:clamp(4rem,13vw,11rem);line-height:.78;letter-spacing:-.075em;font-weight:800;text-transform:uppercase}
.hero-bottom{display:grid;grid-template-columns:minmax(16rem,28rem) auto;justify-content:space-between;align-items:end;gap:2rem;border-top:1px solid var(--line);padding-top:1.5rem}
.hero-bottom p{margin:0;color:#ddd;font-size:clamp(1rem,1.5vw,1.2rem)}
.arrow-link{display:flex;gap:4rem;justify-content:space-between;min-width:16rem;padding-bottom:.45rem;border-bottom:1px solid #fff;text-transform:uppercase;font-size:.78rem;letter-spacing:.12em}
.section{padding:clamp(5rem,10vw,10rem) var(--pad);border-top:1px solid var(--line)}
.section-intro{display:grid;grid-template-columns:1fr 3fr;gap:2rem;margin-bottom:clamp(3rem,7vw,7rem)}
.section h2{margin:0;font-size:clamp(2.8rem,7vw,7.5rem);line-height:.92;letter-spacing:-.055em;text-transform:uppercase}
.service-list{list-style:none;margin:0 0 0 25%;padding:0;border-top:1px solid var(--line)}
.service-list li{display:grid;grid-template-columns:4rem 1fr;align-items:center;min-height:6rem;border-bottom:1px solid var(--line);font-size:clamp(1.4rem,3vw,3rem);letter-spacing:-.03em}
.service-no{color:var(--muted);font-size:.7rem;letter-spacing:.1em}
.approach{display:grid;grid-template-columns:3fr 1fr;gap:clamp(2rem,7vw,8rem);align-items:end}
.approach .section-intro{display:block;margin:0}.approach .section-number{margin-bottom:3rem}
.approach-copy{color:#ddd;font-size:clamp(1rem,1.4vw,1.2rem)}
.contact h2{margin:2rem 0 clamp(4rem,9vw,9rem);font-size:clamp(3.5rem,10vw,10rem)}
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;border-top:1px solid var(--line);padding-top:1.5rem}
.contact-grid p{margin:.4rem 0}.contact-grid a{overflow-wrap:anywhere}
.site-footer{display:flex;justify-content:space-between;gap:1.5rem;padding:1.5rem var(--pad);border-top:1px solid var(--line);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.site-footer p{margin:0}.site-footer div{display:flex;gap:1.5rem}
.legal-page{padding:clamp(4rem,9vw,8rem) var(--pad);max-width:78rem}
.legal-page>h1{margin:1rem 0 clamp(4rem,8vw,8rem);font-size:clamp(3.5rem,10vw,9rem);line-height:.88;letter-spacing:-.06em;text-transform:uppercase}
.legal-copy{max-width:48rem;margin-left:auto}
.legal-copy section{padding:2rem 0;border-top:1px solid var(--line)}
.legal-copy h2{margin:0 0 1rem;font-size:1rem;text-transform:uppercase;letter-spacing:.08em}
.legal-copy p{margin:0;color:#ddd}.legal-copy .notice{margin-top:3rem;padding:1.25rem;border:1px solid #666;color:#fff}
.back-link{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}
@media (max-width:760px){.site-header{align-items:flex-start}.header-actions>a{display:none}.hero{min-height:calc(100svh - 70px)}.hero h1{font-size:clamp(3.9rem,20vw,7rem)}.hero-bottom{grid-template-columns:1fr}.section-intro{grid-template-columns:1fr}.service-list{margin-left:0}.approach{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr 1fr}.site-footer{flex-direction:column}}
@media (max-width:480px){.contact-grid{grid-template-columns:1fr}.site-footer div{flex-wrap:wrap}.service-list li{grid-template-columns:2.5rem 1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
