/* Reading layouts for the bilingual specialist pages. */
.detail-page .breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; padding-block:24px; font-size:12px; color:var(--muted); }
.breadcrumbs a:hover { color:var(--teal); }
.detail-hero { padding:26px 0 60px; display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:center; }
.detail-hero > *,.detail-row > * { min-width:0; }
.detail-page h1,.detail-page h2 { overflow-wrap:anywhere; hyphens:auto; }
.detail-hero h1 { font-size:clamp(36px,4.4vw,64px); line-height:1.08; letter-spacing:-1.8px; margin:22px 0; max-width:780px; }
.detail-hero .lead { font-size:19px; color:var(--muted); line-height:1.65; max-width:690px; }
.detail-hero .intro-actions { margin-top:25px; }
.detail-aside { background:#e5edeb; padding:30px; border:1px solid #c8d7d3; }
.detail-aside > p { margin-top:16px; color:var(--muted); }
.detail-aside h2 { font-size:24px; line-height:1.3; margin-top:12px; }
.detail-aside ul { padding-left:19px; margin:16px 0 0; color:var(--muted); }
.detail-aside li+li { margin-top:10px; }
.detail-image { min-width:0; }
.detail-image img { width:100%; max-height:370px; object-fit:cover; object-position:65% 50%; }
.detail-image figcaption { font-size:11px; line-height:1.6; color:var(--muted); margin-top:10px; }
.detail-section { padding-block:58px; }
.detail-section h2 { font-size:clamp(27px,3vw,38px); line-height:1.2; letter-spacing:-.7px; max-width:850px; margin-bottom:22px; }
.detail-section h3 { font-size:21px; line-height:1.35; margin-bottom:12px; }
.detail-section p { line-height:1.8; color:var(--muted); max-width:800px; }
.detail-section p+p { margin-top:16px; }
.detail-section p a,.detail-section li a { color:var(--teal); text-decoration:underline; text-underline-offset:3px; }
.detail-section .kicker { color:var(--teal); margin-bottom:16px; }
.detail-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin-top:30px; }
.detail-columns article { border-top:1px solid #b9ccc8; padding-top:22px; }
.detail-number { display:block; font:12px 'Roboto Mono',monospace; color:var(--teal); margin-bottom:14px; }
.detail-index { display:flex; flex-wrap:wrap; gap:8px 25px; border-top:1px solid var(--line); padding-top:24px; margin-bottom:36px; }
.detail-index a { font-size:13px; color:var(--teal); padding-block:8px; }
.detail-row { display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; padding-block:34px; border-top:1px solid var(--line); }
.detail-row h2 { font-size:29px; }
.detail-question { font-weight:500; color:var(--ink)!important; }
.detail-callout { background:#e5edeb; border-left:3px solid var(--teal); padding:25px 30px; margin-top:32px; }
.detail-callout p { max-width:none; }
.detail-section .sensor-demo { margin-top:30px; }
.detail-section .targets-grid { margin-top:30px; }
.detail-section .targets-note { font-size:12px; margin-top:24px; }
.detail-faq { max-width:920px; }
.detail-faq details { border-top:1px solid var(--line); padding:20px 0; }
.detail-faq details:last-child { border-bottom:1px solid var(--line); }
.detail-faq summary { cursor:pointer; font-size:18px; line-height:1.5; font-weight:500; }
.detail-faq details p { margin:14px 0 0; }
.detail-team { display:grid; gap:0; }
.detail-person { display:grid; grid-template-columns:200px 1fr; gap:40px; border-top:1px solid var(--line); padding:32px 0; align-items:start; }
.detail-person img { width:200px; height:200px; object-fit:cover; object-position:center; border-radius:50%; background:#f0f1ef; }
.detail-person img.team-philipp { object-position:center top; }
.detail-person .person-role { color:var(--teal); margin-bottom:12px; font-size:14px; }
.detail-person h2 { font-size:30px; margin-bottom:8px; }
.detail-person ul { padding-left:18px; margin:15px 0 0; color:var(--muted); line-height:1.8; }
.support-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px 32px; }
.support-list figure { min-width:0; display:grid; grid-template-rows:200px auto; gap:18px; }
.support-list img { align-self:center; height:auto; max-width:100%; object-fit:contain; }
.support-list .support-eu { width:180px; }
.support-list .support-trip { width:197px; }
.support-list .support-dihp { width:244px; }
.support-list .support-invest { width:260px; }
.support-list figcaption { font-size:14px; color:var(--muted); }
.detail-cta { padding:44px; background:var(--navy); color:#fff; }
.detail-cta h2 { color:#fff; }
.detail-cta p { color:#c3d6dc; }
.detail-cta .button { margin-top:25px; background:#d2ece7; color:var(--navy); border-color:#d2ece7; }
.detail-related { padding-block:32px 48px; }
.detail-related nav { display:flex; flex-wrap:wrap; gap:12px 32px; border-top:1px solid var(--line); padding-top:22px; }
.section-detail-link { margin-top:24px; }
@media(max-width:1000px) { .detail-hero { gap:30px; }.detail-row { gap:32px; }.detail-columns { gap:22px; }.support-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
  .detail-hero { grid-template-columns:1fr; gap:26px; padding:12px 0 36px; }
  .detail-hero h1 { font-size:clamp(34px,7vw,50px); letter-spacing:-1.2px; }
  .detail-hero .lead { font-size:17px; }
  .detail-aside { padding:22px; }.detail-image img { max-height:280px; }
  .detail-section { padding-block:38px; }.detail-columns,.detail-row { grid-template-columns:1fr; gap:25px; }
  .detail-row { padding-block:28px; gap:2px; }.detail-row h2 { font-size:27px; }
  .detail-person { grid-template-columns:140px 1fr; gap:24px; }.detail-person img { width:140px; height:140px; }
  .detail-cta { padding:28px; }.detail-callout { padding:22px; }.detail-index { gap:4px 20px; }
}
@media(max-width:500px) {
  .detail-person { grid-template-columns:1fr; gap:20px; }.detail-person img { width:170px; height:170px; }
  .support-list { grid-template-columns:1fr; gap:36px; }.support-list figure { grid-template-rows:auto auto; gap:18px; }
  .detail-hero h1 { overflow-wrap:anywhere; font-size:36px; }
  .detail-aside h2 { font-size:22px; }.detail-section h2 { font-size:28px; }
}
