.customer-logos{display:flex;align-items:center;justify-content:space-between;gap:22px;flex:1;max-width:1120px}.customer-logo{height:76px;flex:1;min-width:0;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px 18px;border:1px solid #dedede}.customer-logo img{width:auto;max-width:100%;max-height:48px;object-fit:contain}.trustline>p{min-width:210px}
.case-media{margin:0;min-width:0;background:#e7e7e7}.case-media img{width:100%;height:100%;object-fit:contain}.case-media figcaption{font-size:10px;color:#626262;padding:7px 12px;background:#f0f0f0}.project-card .case-media{aspect-ratio:1.55;position:relative;padding:18px 18px 28px}.project-card .case-media img{height:100%;object-fit:contain}.project-card .case-media figcaption{position:absolute;bottom:0;left:0;right:0;padding:4px 12px}.project-summary{font-size:15px;line-height:1.6;color:var(--muted)}.case-intro{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:50px;width:calc(100% - 14vw);max-width:1660px;margin:auto;align-items:center}.case-intro>.case-media img{max-height:600px;padding:20px}.case-facts{padding:30px 0}.case-facts h3{line-height:1.3;font-size:26px}.case-gallery{width:calc(100% - 14vw);max-width:1660px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:30px}.case-gallery img{max-height:550px;padding:20px}.case-gallery .case-media{display:flex;flex-direction:column}.case-gallery figcaption{margin-top:auto}
.hero-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:calc(100% - 14vw);max-width:1660px;margin:12px auto 22px;font-size:11px;color:var(--muted)}.hero-controls>span{margin-right:8px;text-transform:uppercase;letter-spacing:.1em}.hero-controls button{background:transparent;border:1px solid var(--line);padding:9px 14px;border-radius:30px;color:var(--ink);min-height:40px;font-size:11px}.hero-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hero{position:relative;isolation:isolate}.hero-backdrop{display:none;position:absolute;inset:0;z-index:-1}.hero[data-variant=bild],.hero[data-variant=grafik]{padding:75px 55px 80px;display:block;color:#fff;background:#0a0a0a;min-height:570px;margin-bottom:60px}.hero[data-variant=bild] .hero-backdrop{display:block;background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.45) 63%,rgba(0,0,0,.18)),url('assets/hero-network.webp') center/cover}.hero[data-variant=grafik] .hero-backdrop{display:block;background:#0a0a0a url('assets/hero-signal.svg') center/cover}.hero[data-variant=bild] .architecture,.hero[data-variant=grafik] .architecture{display:none}.hero[data-variant=bild] .hero-copy,.hero[data-variant=grafik] .hero-copy{max-width:940px}.hero[data-variant=bild] .lead,.hero[data-variant=grafik] .lead{color:#e3e3e3;max-width:760px}.hero[data-variant=bild] .eyebrow,.hero[data-variant=grafik] .eyebrow,.hero[data-variant=bild] .hero-note,.hero[data-variant=grafik] .hero-note{color:#d3d3d3}.hero[data-variant=bild] .button.secondary,.hero[data-variant=grafik] .button.secondary{color:#fff;border-color:#838383;background:#0a0a0a60}.hero[data-variant=bild] .button.secondary:hover,.hero[data-variant=grafik] .button.secondary:hover{background:#303030}.hero[data-variant=bild] em,.hero[data-variant=grafik] em{color:#ff6d94}.hero[data-variant=grafik] .hero-copy{max-width:950px}.hero[data-variant=grafik] .hero-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0a0a0a 0%,rgba(10,10,10,.94) 35%,rgba(10,10,10,.45) 67%,transparent)}
@media(max-width:1100px){.customer-logos{gap:12px}.customer-logo{padding:12px}.trustline{align-items:flex-start}.trustline>p{min-width:170px}.case-intro{gap:30px}.hero[data-variant=bild],.hero[data-variant=grafik]{padding:55px 35px}.hero[data-variant=grafik] .hero-backdrop:after{background:linear-gradient(90deg,#0a0a0ae8,#0a0a0a80)}}
@media(max-width:760px){.customer-logos{display:flex;justify-content:flex-start;gap:10px;grid-column:1/-1;width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#777 transparent;padding-bottom:10px}.customer-logo{flex:0 0 42%;height:68px;padding:10px 12px;scroll-snap-align:start}.customer-logo:last-child{scroll-snap-align:end}.customer-logo img{max-height:44px}.hero-controls{width:auto;margin:8px 20px 20px;gap:8px}.hero-controls>span{width:100%}.hero-controls button{font-size:10px;padding:9px 11px;min-height:44px}.hero[data-variant=bild],.hero[data-variant=grafik]{padding:36px 22px 40px;min-height:0;margin:0 20px 40px;width:auto}.hero[data-variant=bild] h1,.hero[data-variant=grafik] h1{font-size:36px;overflow-wrap:anywhere}.hero[data-variant=bild] .lead,.hero[data-variant=grafik] .lead{font-size:16px}.case-intro,.case-gallery{width:auto;margin-inline:20px;grid-template-columns:1fr;gap:20px}.case-intro>.case-media img{padding:12px}.case-facts{padding:10px 0}.case-gallery{gap:25px}.project-card .case-media{padding:14px 14px 25px}}
[data-theme=dark] .case-media{background:#222}[data-theme=dark] .case-media figcaption{background:#292929;color:#c8c8c8}
/* Image and graphic heroes span the viewport; copy follows the shared content grid. */
.demo-tools{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.demo-tools a{color:#dedede;text-decoration:underline;text-underline-offset:3px;padding-block:5px}.demo-tools a:hover,.demo-tools a[aria-current=true]{color:#fff;text-decoration-thickness:2px}.demo{align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:760px){.demo-tools{gap:9px}.demo{font-size:9px}}
.hero[data-variant=bild],.hero[data-variant=grafik]{width:100%;max-width:none;margin-inline:0;padding-inline:var(--gutter)}
@media(max-width:900px){.hero[data-variant=bild],.hero[data-variant=grafik]{padding-inline:5vw}}
@media(max-width:760px){.hero[data-variant=bild],.hero[data-variant=grafik]{width:100%;margin-inline:0;padding-inline:20px}}
/* A continuous decorative layer unites header, hero and first content sections. */
body[data-hero-page=seite]{position:relative;isolation:isolate}
body[data-hero-page=seite]::before{content:'';position:absolute;top:26px;right:0;width:100%;height:1550px;z-index:-1;pointer-events:none;background:url('assets/hero-signal-page.svg') right top/auto 1250px no-repeat;opacity:.3;mask-image:linear-gradient(to bottom,#000 0%,#000 62%,transparent 100%)}
[data-theme=dark] body[data-hero-page=seite]::before{opacity:.6}
body[data-hero-page=seite]::before{mask-image:linear-gradient(to bottom,#000 0%,#000 62%,transparent 100%),linear-gradient(to right,transparent 0%,#000 85%);mask-composite:intersect}
body[data-hero-page=seite] .header,body[data-hero-page=seite] .header nav{background:transparent}
.hero[data-variant=seite]{display:block;width:100%;max-width:none;margin-inline:0;padding:75px var(--gutter) 80px;background:transparent;min-height:570px}
.hero[data-variant=seite] .hero-copy{max-width:940px}
.hero[data-variant=seite] .architecture,.hero[data-variant=seite] .hero-backdrop{display:none}
body[data-hero-page=seite] .trustline{background:transparent}
.project-date{font-size:13px;color:var(--muted)}
.project-deliverables{padding-left:20px;color:var(--ink)}
.project-deliverables li{padding:7px 0;line-height:1.6}
.footer-top{display:grid;grid-template-columns:140px minmax(180px,1.7fr) minmax(100px,1fr) minmax(140px,1.2fr) minmax(180px,1.3fr);gap:28px;align-items:start}
.footer-brand img{width:140px;height:auto}.footer-about p{font-size:13px;color:var(--muted);line-height:1.65}.footer-about p:first-child{font-size:15px;color:var(--ink)}
.footer-nav h2,.footer-contact h2{font-size:14px;letter-spacing:0;font-weight:600;line-height:1.4;margin:0 0 16px}
.footer-nav a{display:block;padding:5px 0;font-size:13px;line-height:1.5}.footer-nav a:hover,.footer-contact a:hover{text-decoration:underline;text-underline-offset:3px}
.footer-contact{font-size:13px;overflow-wrap:anywhere}.footer-contact p{margin-top:18px;color:var(--muted)}.footer-contact a{line-height:1.8}
.legal-content h2{font-size:29px;margin-top:38px;letter-spacing:-.025em}.legal-content h3{font-size:21px;margin-top:26px;letter-spacing:-.015em}.legal-content a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-content code{font-size:14px;overflow-wrap:anywhere}.legal-note{background:var(--surface);padding:22px;margin:30px 0;border-left:3px solid var(--red)}.legal-note h2{font-size:22px;margin-top:0}.legal-note p{font-size:15px;margin-bottom:0}.legal-original{margin-top:35px}.legal-original strong{display:inline-block;margin-top:15px}.legal-content .small{font-size:13px}
@media(max-width:1100px){.footer-top{grid-template-columns:140px minmax(0,1fr) minmax(0,1fr);gap:32px}.footer-about{grid-column:2/-1}.footer-nav,.footer-contact{min-width:0}}
@media(max-width:760px){.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.footer-about{grid-column:1/-1}.footer-contact{grid-column:1/-1}.footer-top>p,.footer-top>div{margin-top:0}.footer-nav a{min-height:44px;padding:10px 0}.footer-contact a{display:inline-block;padding-block:7px}.legal-note{padding:18px}.legal-content h2{font-size:25px}}
@media(min-width:1101px){.project-grid.latest-projects{grid-template-columns:repeat(3,minmax(0,1fr))}.latest-projects .project-card h3{font-size:24px}}
@media(max-width:900px){.hero[data-variant=seite]{padding-inline:5vw}}
@media(max-width:760px){
 .hero[data-variant=seite]{padding:36px 20px 40px;min-height:0;margin:0 0 40px}
 .hero[data-variant=seite] h1{font-size:36px}
 body[data-hero-page=seite]::before{height:1400px;background-position:65% top;background-size:auto 1150px;opacity:.15}
 [data-theme=dark] body[data-hero-page=seite]::before{opacity:.38}
 body[data-hero-page=seite] .header nav.open{background:var(--paper)}
}
