/* ——— Forschung /forschung ——— */
.fo-page{
  background:var(--paper,#faf9f6);
  color:var(--ink,#111);
  padding-top:72px;
}

.fo-page .eyebrow{
  margin:0 0 14px;
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--ink,#111);
}

.fo-section-label{
  margin:0 0 clamp(22px,3vw,32px);
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--ink,#111);
}

.fo-text-link{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin-top:clamp(18px,2.5vw,28px);
  font-size:.78rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--ink,#111);
  text-decoration:none;
}
.fo-text-link:hover{text-decoration:underline;text-underline-offset:5px}
.fo-text-link:focus-visible{outline:2px solid var(--ink,#111);outline-offset:4px}

/* Hero */
.fo-hero{
  display:grid;
  gap:clamp(28px,4vw,48px);
  padding:clamp(40px,7vw,88px) var(--pad-x,clamp(28px,4vw,64px)) clamp(40px,6vw,72px);
  border-bottom:1px solid var(--line,rgba(17,17,17,.18));
  align-items:end;
}
.fo-hero-copy{min-width:0;max-width:40rem}
.fo-hero-title{
  margin:0 0 clamp(20px,3vw,28px);
  font-size:clamp(1.85rem,4.2vw,3.2rem);
  line-height:1.05;
  letter-spacing:-.04em;
  font-weight:700;
  max-width:18ch;
}
.fo-hero-lead{
  display:grid;
  gap:1em;
  margin:0;
  max-width:48ch;
}
.fo-hero-lead p{
  margin:0;
  font-size:clamp(1.02rem,1.35vw,1.12rem);
  line-height:1.5;
  color:var(--muted,#5e5b54);
}
.fo-hero-lead p:first-child{
  color:var(--ink,#111);
  font-weight:700;
}
.fo-hero-media{
  margin:0;
  min-width:0;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#e4e1da;
}
.fo-hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:grayscale(1);
}

@media(min-width:960px){
  .fo-hero{
    grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
    align-items:center;
  }
  .fo-hero-media{aspect-ratio:5/4;min-height:28rem}
}

/* Untersuchungen */
.fo-untersuchungen{
  padding:clamp(40px,6vw,72px) var(--pad-x,clamp(28px,4vw,64px));
  border-bottom:1px solid var(--line,rgba(17,17,17,.18));
}
.fo-cards{
  display:grid;
  gap:clamp(28px,4vw,40px);
}
.fo-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(22px,3vw,32px);
  border:1px solid var(--line,rgba(17,17,17,.18));
  background:transparent;
}
.fo-card-num{
  margin:0 0 14px;
  font-size:.78rem;
  letter-spacing:.08em;
  font-weight:700;
  color:var(--muted,#5e5b54);
}
.fo-card-title{
  margin:0 0 12px;
  font-size:clamp(1.25rem,2.2vw,1.75rem);
  line-height:1.12;
  letter-spacing:-.03em;
  font-weight:700;
  text-transform:uppercase;
  max-width:22ch;
}
.fo-card-sub{
  margin:0 0 clamp(20px,3vw,28px);
  font-size:1rem;
  line-height:1.4;
  color:var(--muted,#5e5b54);
  max-width:36ch;
}
.fo-card-visual{
  margin:0 0 clamp(20px,3vw,28px);
  padding-bottom:clamp(18px,2.5vw,24px);
  border-bottom:1px solid var(--line,rgba(17,17,17,.12));
}
.fo-card-visual--process .ff-process{
  max-width:none;
}
.fo-card-body{
  display:grid;
  gap:.95em;
  flex:1;
}
.fo-card-body p{
  margin:0;
  font-size:.98rem;
  line-height:1.5;
  color:var(--muted,#5e5b54);
  max-width:48ch;
}
.fo-card-body p:first-child{
  color:var(--ink,#111);
  font-weight:700;
}
.fo-card .fo-text-link{margin-top:auto;padding-top:clamp(18px,2.5vw,28px)}

.fo-card-visual--duo{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.fo-duo-figure{margin:0;min-width:0}
.fo-duo-figure img,
.fo-duo-placeholder{
  display:block;
  width:100%;
  aspect-ratio:1;
  object-fit:cover;
  background:#ddd9d1;
  filter:grayscale(1);
}
.fo-duo-placeholder{
  filter:none;
  background:linear-gradient(145deg,#e8e5de 0%,#d4d0c7 100%);
  border:1px solid var(--line,rgba(17,17,17,.12));
}
.fo-duo-figure figcaption{
  margin-top:8px;
  font-size:.68rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
}

@media(min-width:960px){
  .fo-cards{grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,36px);align-items:stretch}
}

/* Archiv */
.fo-archiv{
  display:grid;
  gap:clamp(28px,4vw,40px);
  padding:clamp(40px,6vw,72px) var(--pad-x,clamp(28px,4vw,64px));
  border-bottom:1px solid var(--line,rgba(17,17,17,.18));
  align-items:start;
}
.fo-archiv-media{
  margin:0;
  min-width:0;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#e4e1da;
}
.fo-archiv-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:grayscale(1);
}
.fo-archiv-copy{min-width:0;max-width:36rem}
.fo-archiv-title{
  margin:0 0 1em;
  font-size:clamp(1.45rem,2.6vw,2.1rem);
  line-height:1.12;
  letter-spacing:-.035em;
  font-weight:700;
  text-transform:uppercase;
  max-width:16ch;
}
.fo-archiv-text{
  display:grid;
  gap:1em;
  margin:0 0 clamp(8px,1.5vw,12px);
}
.fo-archiv-text p{
  margin:0;
  font-size:1.02rem;
  line-height:1.5;
  color:var(--muted,#5e5b54);
  max-width:42ch;
}
.fo-archiv-quote{
  margin:clamp(28px,4vw,40px) 0 0;
  padding:clamp(20px,3vw,28px) 0 0;
  border:0;
  border-top:1px solid var(--line,rgba(17,17,17,.18));
}
.fo-archiv-quote p{
  margin:0;
  max-width:22ch;
  font-size:clamp(1.15rem,1.9vw,1.4rem);
  line-height:1.3;
  letter-spacing:-.025em;
  font-weight:700;
  font-style:italic;
  color:var(--ink,#111);
}
.fo-archiv-quote::before{
  content:"“";
  display:block;
  margin-bottom:8px;
  font-size:2.4rem;
  line-height:1;
  font-style:normal;
  font-weight:700;
}

@media(min-width:960px){
  .fo-archiv{
    grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);
    gap:clamp(32px,4vw,56px);
    align-items:center;
  }
  .fo-archiv-media{aspect-ratio:5/4;min-height:22rem}
}

/* Verbindung */
.fo-verbindung{
  padding:clamp(40px,6vw,72px) var(--pad-x,clamp(28px,4vw,64px));
  border-bottom:1px solid var(--line,rgba(17,17,17,.18));
}
.fo-verbindung-grid{
  display:grid;
  gap:clamp(24px,3vw,36px);
}
.fo-verbindung-title{
  margin:0 0 10px;
  font-size:.72rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
}
.fo-verbindung-block p{
  margin:0;
  font-size:1rem;
  line-height:1.45;
  color:var(--muted,#5e5b54);
  max-width:36ch;
}
.fo-verbindung-block--shared p{
  color:var(--ink,#111);
  max-width:48ch;
}
.fo-verbindung-axis{
  display:none;
  align-items:center;
  gap:10px;
  color:var(--muted,#5e5b54);
  font-weight:700;
  font-size:1.1rem;
  padding-top:1.4rem;
}
.fo-verbindung-rule{
  display:block;
  width:2.5rem;
  height:1px;
  background:var(--line,rgba(17,17,17,.35));
}

@media(min-width:900px){
  .fo-verbindung-grid{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(0,1.25fr);
    gap:clamp(20px,3vw,40px);
    align-items:start;
  }
  .fo-verbindung-axis{display:flex}
}

/* Werkbezug */
.fo-werkbezug{
  padding:clamp(40px,6vw,72px) var(--pad-x,clamp(28px,4vw,64px)) clamp(56px,8vw,96px);
}
.fo-werkbezug-text{
  margin:0;
  max-width:48ch;
  font-size:clamp(1.05rem,1.5vw,1.2rem);
  line-height:1.4;
  letter-spacing:-.02em;
  font-weight:700;
  color:var(--ink,#111);
}
.fo-outbound{
  display:flex;
  flex-wrap:wrap;
  gap:12px 28px;
  margin-top:clamp(20px,3vw,28px);
}
.fo-outbound .fo-text-link{margin-top:0}
