@font-face{font-family:"Inter Tight";src:url(fonts/inter-tight-300-700.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(fonts/ibm-plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(fonts/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-display:swap}
:root{
  --weiss:#fff;--beton:#eef0ef;--anthrazit:#1a1c1d;--schiefer:#4c6971;--grau:#5d6366;--linie:#d3d7d7;
  --sans:"Inter Tight",Helvetica,Arial,sans-serif;--mono:"Plex Mono",ui-monospace,Menlo,monospace;
  --rand:20px;--max:1440px;--kopf:68px;
  --t13:.8125rem;--t15:.9375rem;--t17:1.0625rem;--t20:1.25rem;
  --t28:clamp(1.375rem,1.1rem + 1.1vw,1.75rem);--t40:clamp(1.75rem,1.2rem + 2.2vw,2.5rem);
  --t56:clamp(2.125rem,1.3rem + 3.4vw,3.5rem);--t84:clamp(2.5rem,1rem + 5.6vw,5.25rem);
  --ease:cubic-bezier(.2,.7,.1,1);
}
@media (min-width:900px){:root{--rand:40px;--kopf:76px}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--kopf) + 16px)}
body{margin:0;background:var(--weiss);color:var(--anthrazit);font:400 var(--t17)/1.6 var(--sans);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}
a:hover{color:var(--schiefer)}
:focus-visible{outline:2px solid var(--schiefer);outline-offset:3px}
h1,h2,h3,h4{font-weight:500;letter-spacing:-.022em;line-height:1.08;margin:0;text-wrap:balance}
p{margin:0 0 1em;max-width:62ch;text-wrap:pretty}
.mono{font-family:var(--mono);font-size:var(--t13);letter-spacing:.02em;text-transform:none}
.leise{color:var(--grau)}
.skip{position:absolute;left:-9999px;top:0;background:var(--anthrazit);color:#fff;padding:12px 16px;z-index:100}
.skip:focus{left:8px;top:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--rand)}

/* Entwurf-Band */
.band{background:var(--beton);color:var(--grau);font:400 12px/1.4 var(--mono);text-align:center;padding:6px var(--rand)}

/* Kopf */
.kopf{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid transparent;transition:border-color .3s}
.kopf.gescrollt{border-bottom-color:var(--linie)}
.kopf .wrap{height:var(--kopf);display:flex;align-items:center;justify-content:space-between;gap:24px}
.marke{display:block;width:150px}
@media (min-width:900px){.marke{width:176px}}
.marke img{width:100%;height:auto}
.nav{display:none}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:34px;align-items:center}
.nav a{text-decoration:none;font-size:var(--t15);padding:6px 0;position:relative}
.nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor}
.nav .nav-kontakt{background:var(--anthrazit);color:#fff;padding:10px 18px}
.nav .nav-kontakt:hover{background:var(--schiefer);color:#fff}
.nav .nav-kontakt[aria-current="page"]::after{display:none}
.menue-knopf{appearance:none;border:0;background:none;padding:10px 0 10px 12px;font:500 var(--t15) var(--sans);color:var(--anthrazit);display:flex;align-items:center;gap:10px;cursor:pointer;min-height:44px}
.menue-knopf span.striche{width:22px;height:10px;position:relative;display:block}
.menue-knopf span.striche::before,.menue-knopf span.striche::after{content:"";position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .3s var(--ease),top .3s var(--ease)}
.menue-knopf span.striche::before{top:0}.menue-knopf span.striche::after{top:8.5px}
.menue-offen .menue-knopf span.striche::before{top:4.25px;transform:rotate(45deg)}
.menue-offen .menue-knopf span.striche::after{top:4.25px;transform:rotate(-45deg)}
.handymenue{position:fixed;inset:var(--kopf) 0 0 0;background:var(--weiss);z-index:49;padding:24px var(--rand) 40px;display:flex;flex-direction:column;justify-content:space-between;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;overflow:auto}
.menue-offen .handymenue{opacity:1;visibility:visible}
.handymenue ul{list-style:none;margin:0;padding:0}
.handymenue li{border-bottom:1px solid var(--linie)}
.handymenue a{display:flex;justify-content:space-between;align-items:baseline;text-decoration:none;font-size:clamp(1.75rem,8vw,2.5rem);font-weight:500;letter-spacing:-.02em;padding:14px 0}
.handymenue a .mono{color:var(--grau)}
.handymenue .hm-fuss{font-size:var(--t15);color:var(--grau);margin-top:32px}
.handymenue .hm-fuss a{font-size:var(--t15);display:inline;padding:0;font-weight:400;letter-spacing:0;color:var(--anthrazit)}
body.menue-offen{overflow:hidden}
@media (min-width:960px){.nav{display:block}.menue-knopf{display:none}.handymenue{display:none}}

/* Hero mit Bauschild */
.hero{padding:0 var(--rand) 0;max-width:var(--max);margin:0 auto}
.hero-raster{display:grid;gap:14px}
.hero-text{padding-top:18px}
@media (max-width:959px){.hero h1{font-size:clamp(1.75rem,1.2rem + 2.6vw,2.5rem);max-width:16ch}.hero-bild{aspect-ratio:3/2}.hero-text .mono{margin-bottom:8px}}
.hero-text .mono{color:var(--grau);display:block;margin-bottom:14px}
.hero h1{font-size:var(--t56);max-width:13ch}
.hero-bild{position:relative;aspect-ratio:4/3;background:var(--beton);overflow:hidden;margin:4px calc(var(--rand) * -1) 0}
.hero-bild img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s var(--ease)}
.hero-bild img.aktiv{opacity:1}
.schild-stand{display:flex;flex-direction:column;margin-top:0;position:relative}
@media (max-width:959px){.schild-stand .schild{margin:0 0 0}}
.schild{background:var(--weiss);border:1.5px solid var(--anthrazit);position:relative;z-index:1}
.schild-kopf{display:flex;justify-content:space-between;align-items:center;background:var(--anthrazit);color:#fff;padding:10px 16px;font:500 var(--t13)/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.schild-kopf .status{display:flex;align-items:center;gap:8px}
.schild-kopf .status::before{content:"";width:8px;height:8px;background:#9fb9bf;display:block}
.schild-kopf .status.entsteht::before{background:#e8b54a}
.schild-koerper{padding:18px 16px 16px}
.schild-art{font:400 var(--t13)/1.2 var(--mono);color:var(--grau);margin:0 0 6px}
.schild-name{font-size:var(--t28);font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:0}
.schild-zusatz{font-size:var(--t15);color:var(--grau);margin:4px 0 0;min-height:1.5em}
.schild-daten{margin:16px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--anthrazit)}
.schild-daten div{padding:10px 0 9px;border-bottom:1px solid var(--linie)}
.schild-daten div:nth-child(odd){padding-right:12px}
.schild-daten div:nth-child(even){padding-left:12px;border-left:1px solid var(--linie)}
.schild-daten div.breit{grid-column:1/-1;padding-left:0;border-left:0}
.schild-daten dt{font:400 11px/1.2 var(--mono);letter-spacing:.04em;color:var(--grau);text-transform:uppercase}
.schild-daten dd{margin:4px 0 0;font:500 var(--t17)/1.25 var(--sans);font-variant-numeric:tabular-nums}
.schild-fuss{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border-top:1.5px solid var(--anthrazit);font:400 11px/1.3 var(--mono);color:var(--grau)}
.schild-fuss img{width:92px;height:auto}
.pfosten{display:none}
.tafel{transition:transform .45s var(--ease),opacity .35s}
.wechselt .tafel{transform:translateY(-6px);opacity:0}
.schild-steuer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0 0}
.pfeile{display:flex;gap:8px}
.pfeile button{appearance:none;width:48px;height:48px;border:1px solid var(--anthrazit);background:var(--weiss);color:var(--anthrazit);cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s}
.pfeile button:hover{background:var(--anthrazit);color:#fff}
.pfeile svg{width:18px;height:18px}
.zaehler{font:500 var(--t15)/1 var(--mono);font-variant-numeric:tabular-nums}
.zaehler .leise{font-weight:400}
.striche-reihe{display:flex;gap:4px;margin-top:12px}
.striche-reihe button{appearance:none;border:0;padding:10px 0;background:none;flex:1;cursor:pointer}
.striche-reihe button span{display:block;height:2px;background:var(--linie);transition:background .3s}
.striche-reihe button[aria-current="true"] span{background:var(--anthrazit)}
.hero-link{display:inline-block;margin-top:14px;font-size:var(--t15)}
@media (min-width:960px){
  .hero{padding-top:8px}
  .hero-raster{grid-template-columns:minmax(0,1.72fr) minmax(340px,1fr);grid-template-rows:auto 1fr;gap:0 40px;height:calc(100svh - var(--kopf) - 30px);min-height:640px;max-height:940px}
  .hero-bild{grid-column:1;grid-row:1/3;aspect-ratio:auto;margin:0 0 0 calc(var(--rand) * -1);height:100%}
  .hero-text{grid-column:2;grid-row:1;padding-top:12px}
  .hero h1{font-size:clamp(2.125rem,1rem + 1.9vw,3rem);max-width:none}
  .schild-stand{grid-column:2;grid-row:2;justify-content:flex-end;padding-bottom:20px;margin-top:0}
  .pfosten{display:flex;justify-content:space-between;padding:0 18%;height:clamp(24px,6vh,72px)}
  .pfosten i{width:9px;background:var(--anthrazit);display:block}
  .schild-steuer{padding:16px 0 0}
}

/* Abschnitte */
.abschnitt{padding:72px 0}
@media (min-width:900px){.abschnitt{padding:120px 0}}
.kopfzeile{display:grid;gap:12px;margin-bottom:40px}
.kopfzeile h2{font-size:var(--t56)}
.kopfzeile .mono{color:var(--grau)}
@media (min-width:900px){.kopfzeile{grid-template-columns:1fr 2fr;align-items:end;margin-bottom:64px}.kopfzeile p{margin:0}}
.dunkel{background:var(--anthrazit);color:#e9ecec}
.dunkel .leise,.dunkel .mono{color:#a9b3b5}
.dunkel a:hover{color:#bcd0d5}
.beton{background:var(--beton)}

/* Leistungen auf der Startseite */
.leist{display:grid;gap:40px}
.leist-einstieg{font-size:var(--t40);font-weight:400;letter-spacing:-.02em;line-height:1.15;max-width:16ch}
.leist-liste{list-style:none;margin:0;padding:0;border-top:1px solid var(--anthrazit)}
.leist-liste li{border-bottom:1px solid var(--linie)}
.leist-liste a{display:grid;grid-template-columns:44px 1fr;gap:4px 12px;padding:22px 0;text-decoration:none}
.leist-liste .nr{font:400 var(--t13)/1.9 var(--mono);color:var(--grau)}
.leist-liste h3{font-size:var(--t28)}
.leist-liste p{grid-column:2;margin:6px 0 0;color:var(--grau);font-size:var(--t15)}
.leist-liste .weiter{grid-column:2;font-size:var(--t15);margin-top:8px;color:var(--anthrazit);text-decoration:underline;text-decoration-color:var(--linie)}
.leist-liste a:hover h3,.leist-liste a:hover .weiter{color:var(--schiefer)}
@media (min-width:900px){.leist{grid-template-columns:5fr 7fr;gap:64px}.leist-liste a{grid-template-columns:64px 1fr 1.1fr;padding:28px 0}.leist-liste p{grid-column:3;grid-row:1/3;margin:4px 0 0}.leist-liste .weiter{grid-column:2}}

/* Philosophie */
.philo{display:grid;gap:32px;align-items:end}
.philo blockquote{margin:0;font-size:var(--t84);font-weight:400;letter-spacing:-.035em;line-height:1.02}
.philo figure{margin:0}
.philo figcaption{margin-top:10px}
@media (min-width:900px){.philo{grid-template-columns:7fr 5fr;gap:64px}}

/* Projekt-Auswahl Startseite */
.auswahl{display:grid;gap:40px 24px;grid-template-columns:1fr}
.karte{display:block;text-decoration:none;margin:0}
.karte .rahmen{overflow:hidden;background:var(--beton)}
.karte img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.karte:hover img{transform:scale(1.025)}
.karte .unter{display:flex;justify-content:space-between;gap:16px;padding-top:12px;font-size:var(--t15)}
.karte .unter strong{font-weight:500}
.karte .unter .mono{color:var(--grau);white-space:nowrap}
@media (min-width:760px){
  .auswahl{grid-template-columns:repeat(12,1fr);gap:64px 24px}
  .auswahl .k1{grid-column:1/8}.auswahl .k1 .rahmen{aspect-ratio:4/3}
  .auswahl .k2{grid-column:9/13;align-self:end}.auswahl .k2 .rahmen{aspect-ratio:4/5}
  .auswahl .k3{grid-column:1/5}.auswahl .k3 .rahmen{aspect-ratio:4/5}
  .auswahl .k4{grid-column:6/13}.auswahl .k4 .rahmen{aspect-ratio:3/2}
  .auswahl .k5{grid-column:2/7}.auswahl .k5 .rahmen{aspect-ratio:1/1}
  .auswahl .k6{grid-column:8/13;align-self:center}.auswahl .k6 .rahmen{aspect-ratio:4/3}
}
.auswahl .rahmen{aspect-ratio:4/3}
.knopf{display:inline-flex;align-items:center;gap:12px;background:var(--anthrazit);color:#fff;text-decoration:none;padding:15px 22px;font:500 var(--t15)/1 var(--sans);border:0;cursor:pointer;min-height:48px}
.knopf:hover{background:var(--schiefer);color:#fff}
.knopf svg{width:16px;height:16px}
.knopf.hell{background:#fff;color:var(--anthrazit)}
.knopf.hell:hover{background:#bcd0d5}
.textlink{font-size:var(--t15)}
.mitte-link{margin-top:56px;display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center}

/* Büro-Teaser */
.buero{display:grid;gap:32px}
.buero h2{font-size:var(--t56);margin-bottom:16px}
.fakten{display:grid;grid-template-columns:1fr 1fr;margin:32px 0;border-top:1px solid #4a5052}
.fakten div{padding:14px 0;border-bottom:1px solid #4a5052}
.fakten dt{font:400 11px/1.2 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:#a9b3b5}
.fakten dd{margin:6px 0 0;font-size:var(--t20);font-weight:500;font-variant-numeric:tabular-nums}
.fakten.hell{border-top-color:var(--anthrazit)}
.fakten.hell div{border-bottom-color:var(--linie)}
.fakten.hell dt{color:var(--grau)}
@media (min-width:900px){.buero{grid-template-columns:6fr 5fr;gap:64px;align-items:center}.fakten{grid-template-columns:repeat(3,1fr)}}

/* Team */
.team{display:grid;gap:32px}
.team figure{margin:0}
.team .namen{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}
.team .namen strong{display:block;font-weight:500}
.team .namen span{font-size:var(--t15);color:var(--grau)}
@media (min-width:900px){.team{grid-template-columns:6fr 5fr;gap:64px;align-items:end}}

/* Kontakt */
.kontakt{display:grid;gap:48px}
.kontakt h2{font-size:var(--t84);letter-spacing:-.035em;margin-bottom:28px}
.adresse{font-style:normal;font-size:var(--t20);line-height:1.5}
.adresse a{text-decoration:none;border-bottom:1px solid currentColor}
.k-zeilen{margin:24px 0 0;display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font-size:var(--t17)}
.k-zeilen dt{font:400 var(--t13)/1.9 var(--mono);color:var(--grau)}
.k-zeilen dd{margin:0}
.dunkel .k-zeilen dt{color:#a9b3b5}
form.anfrage{display:grid;gap:16px}
.feld label{display:block;font:400 var(--t13)/1.4 var(--mono);margin-bottom:6px;color:var(--grau)}
.dunkel .feld label{color:#a9b3b5}
.feld input,.feld textarea{width:100%;font:400 var(--t17)/1.4 var(--sans);color:var(--anthrazit);background:var(--beton);border:1px solid transparent;border-bottom:1px solid var(--anthrazit);padding:14px;border-radius:0;appearance:none}
.feld textarea{min-height:150px;resize:vertical}
.feld input:focus,.feld textarea:focus{outline:none;border-color:var(--schiefer);background:#fff}
.dunkel .feld input,.dunkel .feld textarea{background:#26292a;color:#fff;border-bottom-color:#7d8789}
.dunkel .feld input:focus,.dunkel .feld textarea:focus{background:#2d3132;border-color:#9fb9bf}
.zwei{display:grid;gap:16px}
@media (min-width:600px){.zwei{grid-template-columns:1fr 1fr}}
.danke{display:none;border:1px solid currentColor;padding:20px;font-size:var(--t17)}
.danke.sichtbar{display:block}
.hinweis{font-size:var(--t13);color:var(--grau);margin:0}
.dunkel .hinweis{color:#a9b3b5}
@media (min-width:900px){.kontakt{grid-template-columns:5fr 6fr;gap:80px}}

/* Fuß */
.fuss{border-top:1px solid var(--linie);padding:48px 0 32px;font-size:var(--t15)}
.fuss-raster{display:grid;gap:32px}
.fuss img{width:150px}
.fuss ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fuss a{text-decoration:none}
.fuss a:hover{text-decoration:underline}
.fuss-unten{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;color:var(--grau);font-size:var(--t13)}
@media (min-width:900px){.fuss-raster{grid-template-columns:2fr 1fr 1fr 1fr}}

/* Unterseiten */
.seitenkopf{padding:48px 0 40px}
.seitenkopf h1{font-size:var(--t84);letter-spacing:-.035em;max-width:14ch}
.seitenkopf .mono{display:block;color:var(--grau);margin-bottom:16px}
.seitenkopf p.einl{font-size:var(--t20);margin-top:24px;max-width:46ch}
@media (min-width:900px){.seitenkopf{padding:88px 0 64px}.seitenkopf .wrap{display:grid;grid-template-columns:7fr 5fr;gap:64px;align-items:end}.seitenkopf p.einl{margin:0}}
.unternav{position:sticky;top:var(--kopf);z-index:40;background:rgba(255,255,255,.96);border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
.unternav ul{list-style:none;margin:0 auto;padding:0 var(--rand);max-width:var(--max);display:flex;gap:28px;overflow-x:auto;scrollbar-width:none}
.unternav ul::-webkit-scrollbar{display:none}
.unternav a{display:block;padding:14px 0;text-decoration:none;font-size:var(--t15);white-space:nowrap;border-bottom:1.5px solid transparent}
.unternav a.aktiv{border-bottom-color:var(--anthrazit)}
.zweispalt{display:grid;gap:32px}
.zweispalt h2{font-size:var(--t56)}
.zweispalt h3{font-size:var(--t28);margin:40px 0 12px}
.zweispalt .lead{font-size:var(--t28);line-height:1.3;letter-spacing:-.015em;font-weight:400;max-width:30ch;margin-bottom:28px}
@media (min-width:900px){.zweispalt{grid-template-columns:4fr 7fr;gap:64px}.zweispalt .seite{position:sticky;top:calc(var(--kopf) + 80px);align-self:start}}
.bildreihe{display:grid;gap:16px;margin-top:56px}
.bildreihe figure{margin:0}
.bildreihe figcaption{margin-top:8px}
@media (min-width:760px){.bildreihe{grid-template-columns:repeat(12,1fr);gap:24px}.bildreihe .b-a{grid-column:1/8}.bildreihe .b-b{grid-column:8/13}.bildreihe .b-c{grid-column:1/6}.bildreihe .b-d{grid-column:6/13}.bildreihe .b-ganz{grid-column:1/-1}}
.nummern{list-style:none;margin:0;padding:0;counter-reset:n;border-top:1px solid var(--anthrazit)}
.nummern li{counter-increment:n;display:grid;grid-template-columns:44px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--linie)}
.nummern li::before{content:counter(n,decimal-leading-zero);font:400 var(--t13)/1.9 var(--mono);color:var(--grau)}
.nummern strong{font-weight:500}
.bereiche{display:grid;gap:0;border-top:1px solid var(--anthrazit);margin-top:24px}
.bereiche div{padding:16px 0;border-bottom:1px solid var(--linie);display:grid;grid-template-columns:44px 1fr;gap:12px}
.bereiche .mono{color:var(--grau);line-height:1.9}
.schildgitter{display:grid;gap:48px 24px}
@media (min-width:760px){.schildgitter{grid-template-columns:1fr 1fr}}
@media (min-width:1200px){.schildgitter{grid-template-columns:1fr 1fr 1fr}}
.schildkarte .rahmen{aspect-ratio:10/7;overflow:hidden;background:var(--beton)}
.schildkarte .rahmen img{width:100%;height:100%;object-fit:cover}
.schildkarte .schild{margin:12px 0 0;position:relative}
.schildkarte .pf{display:flex;justify-content:space-between;padding:0 22%;height:18px}
.schildkarte .pf i{width:6px;background:var(--anthrazit)}

/* Projekte */
.filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:40px}
.filter button{appearance:none;border:1px solid var(--anthrazit);background:#fff;color:var(--anthrazit);padding:10px 16px;font:400 var(--t15)/1 var(--sans);cursor:pointer;min-height:44px}
.filter button[aria-pressed="true"]{background:var(--anthrazit);color:#fff}
.filter button .mono{margin-left:6px;opacity:.7}
.galerie{display:grid;gap:40px 24px;grid-template-columns:1fr}
@media (min-width:700px){.galerie{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.galerie{grid-template-columns:repeat(12,1fr);gap:72px 24px}
  .galerie .gk{grid-column:span 4}.galerie .gk.gross{grid-column:span 8}.galerie .gk.hoch .rahmen{aspect-ratio:4/5}}
.gk{margin:0}
.gk button{appearance:none;border:0;background:none;padding:0;text-align:left;width:100%;cursor:zoom-in;color:inherit;font:inherit;display:block}
.gk .rahmen{aspect-ratio:4/3;overflow:hidden;background:var(--beton)}
.gk.gross .rahmen{aspect-ratio:16/10}
.gk img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.gk button:hover img{transform:scale(1.025)}
.gk .unter{display:grid;grid-template-columns:auto 1fr auto;gap:12px;padding-top:12px;align-items:baseline}
.gk .unter .mono{color:var(--grau)}
.gk .unter strong{font-weight:500;font-size:var(--t17)}
.gk .unter .ort{display:block;color:var(--grau);font-size:var(--t15)}
.gk[hidden]{display:none}
.entwicklung-zeile{display:grid;gap:0;padding:40px 0;border-top:1px solid var(--linie)}
.entwicklung-zeile .rahmen{aspect-ratio:16/10;overflow:hidden;background:var(--beton)}
.entwicklung-zeile .rahmen img{width:100%;height:100%;object-fit:cover}
.entwicklung-zeile .schild{margin:12px 0 0}
.entwicklung-zeile .pf{display:none}
@media (min-width:960px){.entwicklung-zeile{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);gap:40px;align-items:end;padding:56px 0}.entwicklung-zeile .schild{margin:0}.entwicklung-zeile .pf{display:flex;justify-content:space-between;padding:0 20%;height:40px}.entwicklung-zeile .pf i{width:8px;background:var(--anthrazit)}}
.partnerlogo{width:150px;margin-top:20px}

/* Großansicht */
.gross-ansicht{position:fixed;inset:0;z-index:90;background:rgba(18,19,20,.97);color:#fff;display:none;grid-template-rows:auto 1fr auto}
.gross-ansicht.offen{display:grid}
.ga-kopf{display:flex;justify-content:space-between;align-items:center;padding:14px var(--rand);gap:16px}
.ga-kopf strong{font-weight:500}
.ga-kopf .mono{color:#a9b3b5}
.ga-bild{display:grid;place-items:center;padding:0 var(--rand);min-height:0}
.ga-bild img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.ga-fuss{display:flex;justify-content:space-between;align-items:center;padding:14px var(--rand) 20px}
.ga-knopf{appearance:none;border:1px solid #6d7577;background:none;color:#fff;width:48px;height:48px;display:grid;place-items:center;cursor:pointer}
.ga-knopf:hover{background:#fff;color:var(--anthrazit)}
.ga-knopf svg{width:18px;height:18px}

/* Büro-Galerie */
.fotostrecke{display:grid;gap:16px}
.fotostrecke figure{margin:0}
@media (min-width:760px){.fotostrecke{grid-template-columns:repeat(6,1fr);gap:24px}.fotostrecke .f1{grid-column:1/5}.fotostrecke .f2{grid-column:5/7;align-self:end}.fotostrecke .f3{grid-column:1/3}.fotostrecke .f4{grid-column:3/7}.fotostrecke .f5{grid-column:1/4}.fotostrecke .f6{grid-column:4/7}.fotostrecke .f7{grid-column:2/6}}
.stellen{list-style:none;margin:0;padding:0;border-top:1px solid var(--anthrazit)}
.stellen li{display:grid;gap:4px;padding:20px 0;border-bottom:1px solid var(--linie)}
.stellen .mono{color:var(--grau)}
.stellen strong{font-size:var(--t20);font-weight:500}
@media (min-width:760px){.stellen li{grid-template-columns:140px 1fr;align-items:baseline}}
.platzhalter{min-height:40vh}

/* Einblenden */
.ein{opacity:0;transform:translateY(18px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.ein.da{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.ein{opacity:1;transform:none}}
@media (max-width:600px){.band-lang{display:none}}
