/* Local design study: stronger simulation imagery and clear light/dark sections. */
.design27 .hero { grid-template-columns:1fr 1.12fr; gap:60px; padding-block:76px 62px; }
.design27 .hero-copy { padding-block:12px; }
.hero-feature,.method-feature { margin:0; overflow:hidden; border-radius:12px; background:#fff; color:#17212e; border:1px solid #ffffff20; }
.feature-heading { display:flex; align-items:center; gap:10px; padding:19px 23px; border-bottom:1px solid #17212e12; color:#566575; font:500 .64rem/1.5 ui-monospace,Consolas,monospace; text-transform:uppercase; letter-spacing:.07em; }
.feature-mark { display:block; width:6px; height:6px; flex:0 0 6px; background:#ce1728; }
.hero-feature-image { padding:24px 18px 20px; }
.hero-feature-image img { width:100%; height:auto; display:block; }
.hero-feature figcaption,.method-feature figcaption { padding:18px 23px 21px; border-top:1px solid #17212e12; color:#566575; font-size:.77rem; line-height:1.6; }
.design27 .facts-strip { margin-bottom:68px; }
.tone-light { color-scheme:light; background:#f2f5f7; color:#1c2937; --text:#1c2937; --muted:#536272; --quiet:#647285; --line:#1c29371d; --line-strong:#1c293735; --surface:#fff; --surface-2:#e9eef3; --accent:#b91628; --cyan:#526f85; }
.tone-services { background:#f2f5f7; border-block:1px solid #1c293710; }
.tone-services .section { padding-block:88px 84px; }
.tone-services .section-heading { margin-bottom:38px; }
.tone-services .service-card { background:#fff; border-color:#1c293720; box-shadow:0 3px 12px #1c293703; }
.tone-services .service-card:hover,.tone-services .service-card:focus-within { border-color:#ce172855; box-shadow:0 12px 32px #1c293709; }
.tone-services .tile-top { border-bottom:1px solid var(--line); padding-bottom:18px; margin-bottom:22px; }
.tone-services .line-icon { stroke:#526f85; }
.tone-services .flow-illustration,.tone-services .people-pattern,.tone-services .geometry-pattern,.tone-services .compute-pattern { opacity:.15; }
.tone-services .tools-row { border-color:var(--line-strong); }
.tone-services .inline-details > summary { border-color:var(--line-strong); }
.design27 .collaboration-section { padding-block:100px; }
.design27 .projects-section { border-top:0; }
.tone-analysis { background:#f6f7f8; border-block:1px solid #1c293715; }
.tone-analysis .project-examples { padding-top:70px; }
.tone-analysis .research-section { padding-bottom:70px; }
.tone-analysis .project-example-list h3 { font-weight:600; }
.design27 .method-section { grid-template-columns:.82fr 1.18fr; align-items:center; gap:58px; padding-block:100px; }
.method-feature { min-width:0; }
.method-feature > img { width:100%; height:auto; padding:18px; }
.method-feature .feature-heading { padding-block:17px; }
.design27 .model-picture-pair { margin-top:28px; gap:18px; }
.design27 .model-picture-pair figcaption { font-size:.75rem; line-height:1.5; }
.tone-experience { background:#f1f4f6; }
.tone-experience .expertise-section { background:transparent; border-top:0; border-bottom:0; padding-bottom:60px; }
.tone-experience .memberships-section { padding-top:54px; padding-bottom:84px; border-top:1px solid var(--line); border-bottom:0; }
.tone-experience .membership-item { background:#ffffff80; padding:25px; border:1px solid var(--line); border-radius:10px; }
.tone-experience .membership-item .tag { margin:0; }
.tone-experience .membership-item .text-link { margin-bottom:0; }
@media (max-width:1100px) {
 .design27 .hero { gap:32px; }
 .design27 .method-section { gap:36px; }
}
@media (max-width:1000px) {
 .design27 .hero { grid-template-columns:1fr; padding-top:42px; gap:32px; }
 .hero-feature { max-width:720px; width:100%; justify-self:center; }
 .design27 .hero-copy { max-width:720px; }
 .design27 .method-section { grid-template-columns:1fr; }
 .method-feature { width:100%; max-width:760px; justify-self:center; }
 .design27 .method-section:has(.method-copy > .inline-details[open]) .method-feature { display:none; }
}
@media (max-width:700px) {
 .local-design-bar { font-size:.61rem; padding-block:6px; letter-spacing:0; }
 .design27 .hero { padding-block:34px 36px; gap:27px; }
 .hero-feature,.method-feature { border-radius:9px; }
 .feature-heading { padding:14px 16px; font-size:.58rem; letter-spacing:.035em; }
 .hero-feature-image { padding:20px 9px 17px; }
 .hero-feature figcaption,.method-feature figcaption { padding:13px 16px 15px; font-size:.71rem; }
 .design27 .facts-strip { margin-bottom:44px; }
 .tone-services .section { padding-block:55px 52px; }
 .tone-services .service-card { padding:24px; }
 .tone-services .tile-top { padding-bottom:14px; margin-bottom:18px; }
 .design27 .collaboration-section { padding-block:58px; }
 .tone-analysis .project-examples { padding-top:48px; }
 .tone-analysis .research-section { padding-bottom:48px; }
 .design27 .method-section { padding-block:58px; gap:28px; }
 .method-feature > img { padding:12px; }
 .design27 .model-picture-pair { grid-template-columns:1fr; }
 .tone-experience .expertise-section { padding-bottom:38px; }
 .tone-experience .memberships-section { padding-top:38px; padding-bottom:54px; }
 .tone-experience .membership-item { padding:22px; }
}

/* Production identity and equal experience disclosure spacing. */
.site-header .brand { flex:0 0 285px; min-width:0; }
.site-header .brand img { display:block; width:100%; height:auto; object-fit:contain; }
.expertise-section #fachlicher-hintergrund,
.expertise-section .history { margin:0; border:0; border-top:1px solid var(--line); }
.expertise-section #fachlicher-hintergrund { margin-top:24px; }
.expertise-section .history { border-bottom:1px solid var(--line); }
.expertise-section #fachlicher-hintergrund > summary,
.expertise-section .history > summary { min-height:68px; padding:18px 0; font-size:.85rem; line-height:1.65; font-weight:550; }
.expertise-section .history > summary { list-style:none; }
.expertise-section .history > summary::-webkit-details-marker { display:none; }
.expertise-section .history > summary::marker { content:''; }
.reference-comparison { border-radius:0; margin:0; height:330px; min-height:0; }
.reference-comparison .hero-image-stage { height:100%; top:calc(50% + 55px); }
.reference-comparison .hero-image-stage img { transform:scale(1.1); transform-origin:65% 0%; object-fit:cover; object-position:center; }
.reference-comparison .visual-top { font-size:.6rem; }
.reference-comparison .hero-wipe-caption { bottom:16px; }
.reference-comparison .hero-wipe-caption > div:first-child { font-size:.68rem; }
.reference-comparison .hero-project-caption { font-size:.6rem; }
.method-feature > img { padding:0; }
.detail-copy .method-feature { max-width:960px; margin-block:28px; }
.method-feature figcaption { font-size:.77rem; }
@media (max-width:1150px) and (min-width:1001px) {
 .site-header .brand { flex-basis:245px; }
 .header-inner { gap:14px; }
 nav { gap:18px; }
}
@media (max-width:1000px) {
 .site-header .brand { flex:0 1 250px; min-width:0; }
 .reference-comparison { height:300px; }
}
@media (max-width:700px) {
 .site-header .header-inner { gap:10px; }
 .site-header .brand { flex:1 1 220px; max-width:260px; }
 .site-header:has(#navigation) .header-inner { display:grid; grid-template-columns:minmax(0,1fr) 72px; gap:0 10px; min-height:82px; padding-block:4px; }
 .site-header:has(#navigation) .brand { width:100%; max-width:300px; grid-column:1; grid-row:1; }
 .site-header:has(#navigation) .header-actions { display:flex; grid-column:2; grid-row:1; flex-direction:column; align-items:center; justify-content:center; gap:1px; margin:0; }
 .site-header:has(#navigation) .language-switch { padding:1px; gap:0; border-radius:4px; }
 .site-header:has(#navigation) .language-switch a { min-width:29px; min-height:28px; font-size:.65rem; padding:2px 4px; }
 .site-header:has(#navigation) .menu-toggle { min-height:40px; height:40px; width:44px; padding:0; }
 .reference-comparison { height:275px; }
 .reference-comparison .hero-image-stage { top:calc(50% + 60px); }
 .reference-comparison .hero-image-stage img { transform:scale(1.45); transform-origin:65% 0%; }
 .method-feature > img { padding:0; }
}

.reference-comparison { --text:#fff; --muted:#d3d8df; --quiet:#cbd3dd; color:#fff; }
.reference-comparison .visual-top, .reference-comparison .hero-wipe-caption { color:#fff; text-shadow:0 1px 5px #000; }
