:root { --black:#070709; --paper:#f3f0e9; --red:#ed1c24; --hero-gutter:clamp(34px,6vw,92px); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:clip; }
body { margin:0; background:var(--black); color:white; font-family:Arial, Helvetica, sans-serif; }
h1,h2,h3 { text-wrap:balance; overflow-wrap:normal; word-break:normal; hyphens:none; }
a { color:inherit; text-decoration:none; }
button { color:inherit; font:inherit; }
.srOnly { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.topbar { position:absolute; inset:0 0 auto; z-index:30; display:flex; justify-content:space-between; align-items:center; padding:28px var(--hero-gutter); }
.menuButton { display:grid; grid-template-columns:30px auto; gap:5px 18px; border:0; background:none; padding:0; cursor:pointer; text-transform:uppercase; letter-spacing:.2em; font-size:12px; }
.menuButton span { grid-column:1; width:27px; height:1px; background:white; }
.menuButton b { grid-column:2; grid-row:1/4; align-self:center; font-weight:500; }
.projectLink { display:flex; align-items:center; gap:15px; color:#fff; text-transform:uppercase; letter-spacing:.17em; font-size:12px; font-weight:700; }
.projectLink:hover,.projectLink:focus-visible { color:#fff; }
.arrow { width:50px; height:50px; display:inline-grid; place-items:center; border:2px solid currentColor; border-radius:50%; font-size:26px; font-weight:700; line-height:1; transition:.35s; }
.menuOverlay { position:fixed; inset:0; z-index:50; background:#0b0b0e; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:18px; opacity:0; visibility:hidden; transition:.35s; }
.menuOverlay.open { opacity:1; visibility:visible; }
.menuOverlay a { font-family:"Arial Narrow", Impact, sans-serif; font-size:clamp(54px,8vw,120px); text-transform:uppercase; line-height:.9; }
.menuOverlay button { position:absolute; right:38px; top:24px; border:0; background:none; font-size:48px; cursor:pointer; }
.headerLogo { position:absolute; right:var(--hero-gutter); top:20px; width:clamp(132px,10.5vw,174px); }
.headerLogo img { display:block; width:100%; height:auto; }
.techPage .headerLogo::before{content:"";position:absolute;z-index:0;inset:-12px -16px;border-radius:50%;background:radial-gradient(ellipse,#090a0c8c 0,#090a0c4a 42%,transparent 74%);filter:blur(5px);pointer-events:none}.techPage .headerLogo img{position:relative;z-index:1;filter:drop-shadow(0 2px 2px #000b) drop-shadow(0 5px 12px #0007)}
.innerTopbar { position:absolute; mix-blend-mode:normal; }
.innerTopbar.light { color:#111; }
.innerTopbar.light .menuButton span { background:#111; }
.innerTopbar.dark { color:#fff; }
.menuColumns { width:min(1500px,94vw); display:grid; grid-template-columns:1.1fr .92fr .72fr .9fr; gap:clamp(28px,3.5vw,62px); }
.menuColumns section { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.menuColumns section>span {
  position:relative;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-height:25px;
  font-family:"Arial Narrow",Impact,Arial,sans-serif;
  font-size:clamp(18px,1.45vw,24px);
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  color:#ff735f;
  text-shadow:0 0 16px #ff735f42;
}
.menuColumns section>span::after {
  content:"";
  width:clamp(30px,2.8vw,48px);
  height:3px;
  border-radius:10px;
  background:currentColor;
  box-shadow:0 0 10px currentColor;
  opacity:.72;
  animation:menuIndexSignal 7s ease-in-out infinite;
}
.menuColumns section:nth-child(2)>span { color:#75e0d4; text-shadow:0 0 16px #75e0d442; }
.menuColumns section:nth-child(3)>span { color:#ff9a72; text-shadow:0 0 16px #ff9a7242; }
.menuColumns section:nth-child(4)>span { color:#badb38; text-shadow:0 0 16px #badb3842; }
.menuColumns section:nth-child(2)>span::after { animation-delay:.65s; }
.menuColumns section:nth-child(3)>span::after { animation-delay:1.3s; }
.menuColumns section:nth-child(4)>span::after { animation-delay:1.95s; }
.menuOverlay .menuColumns a { font-family:Arial,Helvetica,sans-serif; font-size:15px; line-height:1.3; text-transform:none; color:#aaa; }
.menuOverlay .menuColumns .menuArea { font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(34px,3.8vw,62px); line-height:.9; text-transform:uppercase; white-space:nowrap; color:#fff; margin:8px 0 14px; }
.menuColumns .menuAbout { position:relative; padding:0 26px 28px; border:0; background:none; }
.menuColumns .menuAbout::before { content:""; position:absolute; z-index:0; inset:37px 0 0; border:1px solid #ffffff1f; background:radial-gradient(circle at 100% 0,#28756f66 0,transparent 52%),linear-gradient(135deg,#ffffff0b,transparent 70%); pointer-events:none; }
.menuColumns .menuAbout>* { position:relative; z-index:1; }
.menuAbout strong { color:#d5d5da; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(24px,2.2vw,38px); line-height:1.02; text-transform:uppercase; font-weight:500; }
.menuOverlay .menuColumns .menuAboutLink { display:flex; align-items:center; gap:13px; margin-top:auto; color:#fff; text-transform:uppercase; font-size:11px; font-weight:700; letter-spacing:.13em; }
.menuAboutLink .arrow { width:38px; height:38px; font-size:19px; }
.menuMeta { width:min(1180px,84vw); display:flex; flex-wrap:wrap; gap:24px; margin-top:60px; padding-top:22px; border-top:1px solid #29292e; }
.menuOverlay .menuMeta a { font-family:Arial,Helvetica,sans-serif; font-size:11px; line-height:1; letter-spacing:.18em; color:#888; }

.hero { height:100vh; height:100svh; max-height:1080px; min-height:0; display:flex; position:relative; overflow:hidden; }
.world { width:50%; height:100%; min-height:0; position:relative; overflow:hidden; isolation:isolate; }
.worldTech { background:radial-gradient(circle at 30% 32%,#4a4a50 0,#2b2b30 30%,#1a1a1e 66%,#111114 100%); }
.worldPrint { background:radial-gradient(circle at 70% 32%,#3e7c79 0,#215052 30%,#103234 66%,#071c1e 100%); color:#fff; }
.worldMedia { position:absolute; z-index:1; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform 1.1s cubic-bezier(.22,1,.36,1),filter .8s; }
.ambientLoops { position:absolute; z-index:2; inset:3% -28% auto -18%; height:54%; transform:rotate(-8deg); opacity:.2; mix-blend-mode:screen; pointer-events:none; }
.worldPrint .ambientLoops { inset:4% -18% auto -25%; transform:rotate(8deg); opacity:.17; }
.ambientLoops i { position:absolute; width:112%; height:32%; border:2px solid #ff6654; border-radius:50%; box-shadow:0 0 16px #ed1c24,inset 0 0 14px #ed1c24; transform:skew(-22deg); }
.ambientLoops i:nth-child(2) { top:25%; left:-8%; border-color:#fff; box-shadow:0 0 22px #fff; opacity:.4; }
.ambientLoops i:nth-child(3) { top:52%; left:10%; }
.worldPrint .ambientLoops i { border-color:#7ce4d7; box-shadow:0 0 16px #42bfae,inset 0 0 14px #42bfae; transform:skew(22deg); }
.worldPrint .ambientLoops i:nth-child(2) { border-color:#d9fff9; box-shadow:0 0 22px #d9fff9; }
.world::after { content:""; position:absolute; z-index:3; inset:0; pointer-events:none; }
.worldTech::after { background:linear-gradient(180deg,#20202510 0,#20202516 34%,#17171bcf 69%,#111114fa 100%),linear-gradient(90deg,#1b1b20a8 0,#1b1b202e 62%,transparent 100%); }
.worldPrint::after { background:linear-gradient(180deg,#0a393b12 0,#0a393b18 34%,#082d30d5 69%,#071f21fb 100%),linear-gradient(270deg,#0b3a3c9c 0,#0b3a3c28 62%,transparent 100%); }
.world:hover .worldMedia { transform:scale(1.025); filter:saturate(1.08) contrast(1.03); }
.worldContent { position:absolute; z-index:4; left:var(--hero-gutter); right:var(--hero-gutter); bottom:11%; }
.worldPrint .worldContent { left:var(--hero-gutter); right:var(--hero-gutter); }
.eyebrow { font-size:11px; text-transform:uppercase; letter-spacing:.22em; opacity:.65; margin:0 0 18px; }
.world h2 { margin:0; font-family:"Arial Narrow", Impact, sans-serif; font-size:clamp(50px,5vw,86px); line-height:.78; letter-spacing:-.035em; text-transform:uppercase; font-weight:500; white-space:nowrap; }
.claim { text-transform:uppercase; letter-spacing:.24em; font-size:12px; margin:24px 0 30px; }
.discover { display:flex; align-items:center; gap:18px; text-transform:uppercase; font-size:12px; letter-spacing:.25em; font-weight:700; }
.world .discover .arrow { background:transparent; }
.techArt { position:absolute; inset:5% -15% auto -15%; height:46%; transform:rotate(-8deg); opacity:.92; }
.techArt i { position:absolute; width:110%; height:32%; border:2px solid #ff4a35; border-radius:50%; box-shadow:0 0 18px #ed1c24, inset 0 0 18px #ed1c24; transform:skew(-24deg); }
.techArt i:nth-child(2){ top:24%; left:-9%; border-color:#f4f4f4; box-shadow:0 0 25px white; opacity:.35; }
.techArt i:nth-child(3){ top:51%; left:11%; border-color:#ed1c24; }
.printGlow { position:absolute; z-index:0; inset:3% -18% auto -5%; height:48%; transform:rotate(8deg); opacity:.72; }
.printGlow i { position:absolute; width:110%; height:32%; border:2px solid #76e0d3; border-radius:50%; box-shadow:0 0 18px #42bfae,inset 0 0 18px #42bfae; transform:skew(24deg); }
.printGlow i:nth-child(2){ top:24%; left:8%; border-color:#d5fff9; box-shadow:0 0 25px #d5fff9; opacity:.4; }
.printGlow i:nth-child(3){ top:51%; left:-10%; border-color:#62d0c2; }
.printArt { position:absolute; z-index:1; inset:6% -10% auto 25%; height:54%; transform:rotate(-9deg); }
.paper { position:absolute; width:68%; height:80%; background:#fff; box-shadow:0 24px 60px #0002; border:1px solid #d8d5ce; overflow:hidden; }
.paperOne { top:12%; left:12%; background:#fff; border-color:#e1ded7; }
.paperTwo { top:0; left:22%; background:#ef7964; border-color:#fff; border-width:5px; box-shadow:0 28px 70px #0006,0 0 34px #64d8ca38; }
.letterGrid { position:absolute; inset:0; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; }
.letterGrid span { display:grid; place-items:center; overflow:hidden; position:relative; background:#ef7964; }
.letterGrid span:nth-child(2) { background-color:#143c78; }
.letterGrid span:nth-child(3) { background-color:#090a0c; }
.letterGrid span:nth-child(4) { background-color:#a8d817; }
.letterGrid span::before { content:attr(data-letter); font-family:Georgia,"Times New Roman",serif; font-size:clamp(92px,10vw,190px); font-weight:700; line-height:.8; color:transparent; background:radial-gradient(circle,#fff 1.6px,transparent 2px); background-size:8px 8px; background-clip:text; -webkit-background-clip:text; }
.letterGrid span:nth-child(4)::before { background-image:radial-gradient(circle,#122218 1.6px,transparent 2px); }
.colorScale { position:absolute; right:28px; bottom:25px; display:flex; width:42%; height:13px; transform:skewX(-9deg); box-shadow:0 0 0 5px #fff; }
.colorScale i { flex:1; background:#00a0df; }
.colorScale i+i { border-left:5px solid #fff; }
.colorScale i:nth-child(2){background:#e5007d}.colorScale i:nth-child(3){background:#ffd400}.colorScale i:nth-child(4){background:#111}.colorScale i:nth-child(5){background:#009c4b}

.brandIntro { position:absolute; z-index:15; width:min(360px,28vw); left:50%; top:18%; transform:translateX(-50%); filter:drop-shadow(0 18px 36px #0008); animation:brandIn 1.5s both cubic-bezier(.22,1,.36,1); }
.brandIntro img { display:block; position:relative; z-index:2; width:100%; height:auto; max-width:100%; object-fit:contain; object-position:center; }
.pixelCloud { position:absolute; inset:-25%; z-index:1; }
.pixelCloud i,.colorSeam i { position:absolute; display:block; width:8px; height:8px; background:var(--c); box-shadow:0 0 10px var(--c); }
.pixelCloud i { left:calc((var(--i) * 37) % 100 * 1%); top:calc((var(--i) * 61) % 100 * 1%); animation:pixelIn 1.35s both; animation-delay:calc(var(--i) * 18ms); }
.colorSeam { position:absolute; z-index:12; left:50%; top:0; bottom:0; width:18px; transform:translateX(-50%); }
.colorSeam i { left:calc((var(--i) % 3) * 7px - 7px); top:calc(var(--i) * 4.25%); animation:seamIn .8s both; animation-delay:calc(.5s + var(--i) * 22ms); }

.statement { background:#0b0b0e; padding:130px max(7vw,35px); display:grid; grid-template-columns:1fr 2.4fr; gap:40px; }
.sectionIndex { color:#aaaab1; text-transform:uppercase; letter-spacing:.18em; font-size:12px; font-weight:700; }
.heroKeywords { max-width:min(100%,760px); font-size:clamp(14px,1.1vw,17px); line-height:1.5; letter-spacing:.12em; }
.statement h2 { margin:0; font-family:"Arial Narrow", Impact, sans-serif; text-transform:uppercase; font-size:clamp(52px,7vw,116px); line-height:.88; font-weight:500; }
.statement h2 em { font-style:normal; color:#ed1c24; }
.statement > p:last-child { grid-column:2; max-width:720px; color:#aaa; font-size:20px; line-height:1.6; }
.services { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.services article { min-height:620px; padding:80px max(7vw,35px); display:flex; flex-direction:column; justify-content:flex-end; }
.services article:first-child { background:radial-gradient(ellipse at 72% -8%,#ff9a76 0,#ff6552 13%,transparent 38%),radial-gradient(ellipse at 14% 110%,#a80712 0,#ed1c24 48%,#7b020a 100%); }
.services article:last-child { background:radial-gradient(circle at 75% 20%,#35716f,#163d40 48%,#0a2426 100%); color:#fff; }
.services span { text-transform:uppercase; letter-spacing:.2em; font-size:12px; }
.services h2 { font-family:"Arial Narrow", Impact, sans-serif; text-transform:uppercase; font-size:clamp(54px,5.6vw,96px); line-height:.88; font-weight:500; margin:24px 0; }
.services p { max-width:520px; font-size:18px; line-height:1.6; }
.services a { display:flex; align-items:center; gap:16px; margin-top:24px; text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:bold; }
.colorStatement { position:relative; overflow:hidden; padding:110px max(7vw,35px) 120px; background:radial-gradient(ellipse at 82% 0,#184f4c 0,transparent 38%),radial-gradient(ellipse at 8% 100%,#591018 0,transparent 42%),#08090b; }
.colorStatement::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.22; background:linear-gradient(115deg,transparent 20%,#ffffff0b 50%,transparent 74%); }
.colorStatement>p,.homeTeamHeading>p { position:relative; margin:0; color:#8b8b94; text-transform:uppercase; letter-spacing:.22em; font-size:12px; font-weight:700; }
.colorStatement h2 { position:relative; margin:30px 0 58px; max-width:1500px; white-space:nowrap; font-family:"Arial Narrow",Impact,sans-serif; text-transform:uppercase; font-size:clamp(58px,8vw,136px); line-height:.82; font-weight:500; }
.colorStatement>a,.homeTeamHeading>a { position:relative; display:inline-flex; align-items:center; gap:18px; text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:700; }
.homeTeam { background:radial-gradient(circle at 84% 0,#163d3c 0,#151c20 38%,#0b0c0f 78%); }
.homeTeamHeading { padding:92px var(--hero-gutter) 70px; display:grid; grid-template-columns:1fr 2fr auto; gap:34px; align-items:end; }
.homeTeamHeading h2 { margin:0; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(48px,6.4vw,104px); line-height:.86; text-transform:uppercase; font-weight:500; }
.homeTeamHeading>a { align-self:end; }
footer { padding:120px max(7vw,35px) 35px; background:#070709; }
footer > p { text-transform:uppercase; letter-spacing:.22em; color:#888; }
footer h2 { font-family:"Arial Narrow", Impact, sans-serif; text-transform:uppercase; font-size:clamp(64px,10vw,170px); line-height:.82; font-weight:500; margin:30px 0 60px; }
.flickerLetter { color:#fff; animation:letterGlow var(--letter-duration) infinite; animation-delay:var(--letter-delay); }
footer > a { display:inline-flex; align-items:center; gap:18px; font-size:clamp(20px,3vw,44px); border-bottom:1px solid #555; padding-bottom:14px; }
.footerLine { border-top:1px solid #2b2b2f; margin-top:110px; padding-top:25px; display:flex; justify-content:space-between; color:#777; font-size:11px; text-transform:uppercase; letter-spacing:.14em; }

/* Inhaltsseiten: zwei verbundene Gestaltungswelten */
.innerPage { min-height:100vh; }
.innerPage main { min-height:100vh; }
.techPage,.contactPage { background:radial-gradient(circle at 15% 10%,#45454b,#232328 38%,#111114 100%); color:#fff; }
.printPage { background:radial-gradient(circle at 15% 10%,#3e7777,#173f42 38%,#071a1c 100%); color:#fff; }
.digitalPage { background:radial-gradient(circle at 16% 8%,#5a415d 0,#2c253d 34%,#151725 68%,#080a10 100%); color:#fff; }
.legalPage { background:radial-gradient(circle at 16% 5%,#3f4d4f 0,#242b2e 30%,#121417 65%,#08090b 100%); color:#fff; }
.innerHero,.detailHero { min-height:72vh; padding:190px var(--hero-gutter) 90px; display:flex; flex-direction:column; justify-content:flex-end; }
.innerHero { position:relative; overflow:hidden; }
.innerHeroCopy { position:relative; z-index:2; }
.techImageHero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:70%; z-index:1; background:linear-gradient(0deg,#090a0df2 0,#090a0d9c 45%,transparent 100%); }
.digitalImageHero::after { background:linear-gradient(0deg,#151725f5 0,#151725a8 45%,transparent 100%); }
.techHeroImage { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.digitalHeroImage { object-position:center; }
.innerHero.digitalImageHero h1 { font-size:clamp(60px,7vw,118px); white-space:nowrap; }
.techImageHero .innerHeroCopy { text-shadow:0 3px 24px #000,0 1px 3px #000; }
.innerHero h1,.detailHero h1,.legalPage h1 { margin:18px 0 32px; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(74px,11vw,190px); line-height:.8; text-transform:uppercase; font-weight:500; letter-spacing:-.035em; }
.techFlickerTitle .flickerLetter{animation-name:techLetterGlow}.printBuildTitle{position:relative;width:max-content;max-width:100%;isolation:isolate}.printBuildTitle>span{display:block;white-space:nowrap}.printBuildTitle .printTitlePass{position:absolute;inset:0;opacity:0;clip-path:inset(0 100% 0 0);mix-blend-mode:screen}.printTitleC{color:#00b8d4;transform:translateX(-3px);animation:printPassC 13s infinite}.printTitleM{color:#e6007e;transform:translateX(3px);animation:printPassM 13s infinite}.printTitleY{color:#ffd500;transform:translateY(2px);animation:printPassY 13s infinite}.printTitleK{color:#171717;text-shadow:0 0 1px #fff;animation:printPassK 13s infinite;mix-blend-mode:multiply!important}.printBuildTitle::after{content:"";position:absolute;z-index:3;left:-4%;top:-12%;width:18%;height:124%;opacity:0;pointer-events:none;background:linear-gradient(90deg,transparent,#ffffff38 42%,#fff9 50%,#ffffff24 58%,transparent);transform:skewX(-12deg);animation:printRoller 13s infinite}
.innerHeroCopy>p:last-child,.detailHero>p { max-width:760px; font-size:clamp(18px,2vw,28px); line-height:1.55; }
.printPage .sectionIndex { color:#76d9ce; }
.digitalPage .sectionIndex { color:#ff8a71; }
.legalPage .sectionIndex { color:#79d9cf; }
.areaGrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.areaGrid>a { min-height:380px; padding:54px var(--hero-gutter); border-top:1px solid #ffffff1f; border-right:1px solid #ffffff1f; position:relative; }
.printPage .areaGrid>a { border-color:#a4fff21c; }
.areaGrid>a>span:first-child { font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(19px,1.65vw,28px); font-weight:700; line-height:1; letter-spacing:.12em; opacity:1; }
.techPage .areaGrid>a>span:first-child { color:#ff725e; text-shadow:0 0 18px #ed1c2445; }
.printPage .areaGrid>a>span:first-child { color:#75e0d4; text-shadow:0 0 18px #64d8ca45; }
.areaGrid h2 { font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(34px,3.2vw,58px); line-height:.9; text-transform:uppercase; font-weight:500; margin:38px 0 20px; }
.areaGrid p { max-width:520px; line-height:1.65; opacity:.82; }
.areaGrid .arrow { position:absolute; right:44px; bottom:42px; width:56px; height:56px; border-width:2px; background:#ffffff08; box-shadow:0 0 0 1px #ffffff0d inset; }
.techPage .areaGrid>a:nth-child(odd) { background:#17171b; }
.techPage .areaGrid>a:nth-child(even) { background:#202025; }
.printPage .areaGrid>a:nth-child(odd) { background:#092628; }
.printPage .areaGrid>a:nth-child(even) { background:#103436; }
.areaSwitch { padding:90px var(--hero-gutter); display:flex; align-items:center; justify-content:space-between; background:#40565a; color:#fff; }
.areaSwitch>p { text-transform:uppercase; letter-spacing:.2em; font-size:11px; }
.areaSwitch>a,.detailHero>a { display:flex; align-items:center; gap:18px; font-size:18px; }
.detailHero { min-height:78vh; }
.detailHero h1 { max-width:1200px; font-size:clamp(64px,9vw,150px); }
.detailHero>a { margin-top:42px; align-self:flex-start; }
.detailCopy { padding:110px var(--hero-gutter); display:grid; grid-template-columns:1fr 1fr; gap:50px; }
.detailCopy h2 { font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(46px,6vw,94px); line-height:.9; text-transform:uppercase; font-weight:500; margin:0; grid-row:span 2; }
.detailCopy p { max-width:600px; font-size:18px; line-height:1.7; opacity:.72; margin:0; }
.printPage .detailCopy { background:#092628; }
.techPage .detailCopy { background:#17171b; }
.digitalGrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.digitalGrid article { min-height:520px; padding:70px var(--hero-gutter); border-top:1px solid #ffffff1f; border-right:1px solid #ffffff1f; background:linear-gradient(135deg,#ffffff08,transparent 62%); scroll-margin-top:30px; }
.digitalGrid article:nth-child(2) { background:radial-gradient(circle at 85% 10%,#2d7770 0,transparent 38%),linear-gradient(135deg,#ffffff08,transparent 62%); }
.digitalGrid article>span { font-family:"Arial Narrow",Impact,Arial,sans-serif; font-size:clamp(18px,1.5vw,25px); line-height:1; font-weight:800; letter-spacing:.12em; color:#ff8a71; opacity:1; text-shadow:0 0 15px #ff8a7148; }
.digitalGrid h2 { margin:42px 0 24px; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(48px,5vw,88px); line-height:.88; text-transform:uppercase; font-weight:500; }
.digitalGrid p { max-width:620px; font-size:18px; line-height:1.7; color:#c4becb; }
.digitalGrid a { display:flex; align-items:center; gap:18px; margin-top:38px; text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:700; }
.legalPage main { padding:180px var(--hero-gutter) 120px; }
.legalPage article { max-width:980px; }
.legalPage h1 { font-size:clamp(62px,9vw,140px); }
.legalPage h1 { white-space:nowrap; font-size:clamp(54px,6.3vw,96px); letter-spacing:-.055em; }
.legalNotice { padding:38px; background:#171a1e; border-left:6px solid #5ecabd; font-size:18px; line-height:1.7; }
.legalContent { display:grid; gap:0; }
.legalContent section { position:relative; padding:46px 42px 52px; background:linear-gradient(105deg,#58cfc01a 0,#58cfc008 35%,transparent 72%); border:0; border-top:1px solid #ffffff1c; box-shadow:none; overflow:hidden; }
.legalContent section::before { content:""; position:absolute; left:0; top:46px; width:3px; height:42px; background:linear-gradient(#7de6da,#247f79); box-shadow:0 0 18px #63d7c9; }
.legalContent h2 { margin:0 0 18px; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(28px,3vw,44px); line-height:1; text-transform:uppercase; font-weight:500; }
.legalContent p { margin:0 0 18px; font-size:17px; line-height:1.75; color:#b9bcc1; }
.legalContent p:last-child { margin-bottom:0; }
.legalContent strong { color:#fff; }
.legalContent a { color:#79d9cf; text-decoration:underline; text-underline-offset:3px; }
.legalToc { margin:0 0 26px; padding:34px 38px; background:linear-gradient(110deg,#4bc7b81c,transparent 75%); border:0; border-top:1px solid #79d9cf38; border-bottom:1px solid #79d9cf20; }
.legalToc h2 { margin:0 0 20px; font-family:"Arial Narrow",Impact,sans-serif; font-size:30px; line-height:1; text-transform:uppercase; font-weight:500; }
.legalToc ol { margin:0; padding-left:0; columns:2; column-gap:50px; list-style:none; counter-reset:toc; }
.legalToc li { margin:0 0 10px; break-inside:avoid; counter-increment:toc; display:flex; gap:9px; }
.legalToc li::before { content:counter(toc) "."; flex:0 0 auto; color:#79d9cf; }
.legalToc a { color:#c8f3ee; text-decoration:none; border-bottom:1px solid #579b94; }
.legalContent section { scroll-margin-top:32px; }
.legalHint { padding:18px 20px; background:#0d2829; border:1px solid #3d7771; }
.legalAddressLogo { display:block; width:clamp(170px,24vw,260px); height:auto; margin:4px 0 34px; filter:drop-shadow(0 12px 24px #0007); }

/* Über uns */
.aboutPage { background:radial-gradient(circle at 12% 5%,#404147 0,#202126 34%,#0d1618 68%,#07090b 100%); color:#fff; }
.aboutHero { min-height:68vh; padding:190px var(--hero-gutter) 90px; display:flex; flex-direction:column; justify-content:flex-end; }
.aboutHero h1 { margin:18px 0 32px; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(74px,11vw,180px); line-height:.8; text-transform:uppercase; font-weight:500; letter-spacing:-.035em; }
.aboutHero>p:last-child { max-width:780px; font-size:clamp(18px,2vw,27px); line-height:1.55; color:#b6b9bd; }
.teamGrid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #ffffff1c; }
.teamCard { min-width:0; padding:clamp(18px,2vw,32px); border-right:1px solid #ffffff1c; border-bottom:1px solid #ffffff1c; background:linear-gradient(135deg,#ffffff05,transparent 58%); }
.teamPhoto { position:relative; overflow:hidden; aspect-ratio:600/843; background:#111519; }
.teamPhoto::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 68%,#071012b5); pointer-events:none; }
.teamPhoto img { display:block; width:100%; height:100%; object-fit:cover; filter:saturate(.88) contrast(1.03); transition:transform .8s cubic-bezier(.22,1,.36,1),filter .5s; }
.teamCard:hover .teamPhoto img { transform:scale(1.025); filter:saturate(1) contrast(1.03); }
.teamPhoto>span { position:absolute; z-index:2; left:22px; bottom:19px; font-family:"Arial Narrow",Impact,Arial,sans-serif; font-size:clamp(18px,1.45vw,24px); line-height:1; font-weight:800; letter-spacing:.12em; color:#7de2d6; text-shadow:0 0 15px #65d7ca80,0 2px 5px #000; }
.teamInfo { padding:28px 0 4px; }
.teamInfo h2 { margin:0 0 12px; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(27px,2.7vw,46px); line-height:.9; text-transform:uppercase; font-weight:500; }
.teamInfo p { margin:0; color:#78d8cd; text-transform:uppercase; letter-spacing:.18em; font-size:11px; }
.teamPlaceholder .teamPhoto img { filter:none; }
.homeTeamGrid .teamCard { padding:clamp(18px,2.4vw,38px); }
.homeTeamGrid .teamPhoto { aspect-ratio:4/3; }
.homeTeamGrid .teamPhoto img { object-position:center 24%; }
.homeTeamGrid .teamInfo h2 { font-size:clamp(28px,3vw,50px); }
.aboutStatement { padding:120px var(--hero-gutter) 130px; background:radial-gradient(ellipse at 72% 0,#26706c 0,#173b3d 32%,#0b1719 72%); }
.aboutStatement>p { color:#7adbd0; text-transform:uppercase; letter-spacing:.22em; font-size:11px; }
.aboutStatement h2 { margin:28px 0 0; font-family:"Arial Narrow",Impact,sans-serif; font-size:clamp(54px,8vw,132px); line-height:.84; text-transform:uppercase; font-weight:500; }

.subFooter { padding:44px var(--hero-gutter) 34px; background:#09090c; color:#fff; display:grid; grid-template-columns:1.15fr 2fr auto; gap:42px; align-items:end; border-top:1px solid #303036; }
.subFooterBrand { display:flex; flex-direction:column; gap:8px; }
.subFooterBrand span { font-family:"Arial Narrow",Impact,sans-serif; font-size:28px; text-transform:uppercase; }
.subFooterBrand strong { color:#b9b9c0; font-size:12px; line-height:1.5; letter-spacing:.14em; text-transform:uppercase; font-weight:700; }
.subFooter nav { display:flex; flex-wrap:wrap; gap:12px 26px; }
.subFooter nav a,.subFooterMail { font-size:12px; font-weight:600; letter-spacing:.11em; text-transform:uppercase; color:#c7c7cd; }
.subFooter nav a:hover,.subFooterMail:hover { color:#fff; }
.subFooterMail { color:#fff; border-bottom:1px solid #555; padding-bottom:5px; }

@media (max-width:1100px) {
  .teamGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .teamCard{padding:clamp(22px,4vw,42px)}
  .teamInfo h2{font-size:clamp(32px,5vw,54px)}
  .homeTeamHeading{grid-template-columns:1fr 2fr}
  .homeTeamHeading>a{grid-column:2}
}

@keyframes brandIn { 0%,35%{opacity:0;filter:blur(7px);transform:translateX(-50%) scale(.92)} 100%{opacity:1;filter:drop-shadow(0 18px 36px #0008);transform:translateX(-50%) scale(1)} }
@keyframes pixelIn { from{opacity:1;transform:translate(calc((var(--i) - 17) * 4px),calc((17 - var(--i)) * 3px)) scale(1.6)} 75%{opacity:1} to{opacity:.38;transform:translate(0) scale(.8)} }
@keyframes seamIn { from{opacity:0;transform:translateY(-30px) scale(2)} to{opacity:.9;transform:none} }
@keyframes letterGlow {
  0%,70%,72%,91%,93%,100% { color:#fff; text-shadow:none; }
  71%,73%,90%,92% { color:var(--letter-color); text-shadow:0 0 10px var(--letter-color),0 0 30px var(--letter-color),0 0 52px color-mix(in srgb,var(--letter-color) 58%,transparent); }
}
@keyframes techLetterGlow{0%,76%,78%,93%,95%,100%{color:#fff;text-shadow:none}77%,94%{color:var(--letter-color);text-shadow:0 0 9px var(--letter-color),0 0 24px var(--letter-color),0 0 42px color-mix(in srgb,var(--letter-color) 48%,transparent)}}
@keyframes letterGlowMobile{0%,70%,72%,91%,93%,100%{color:#fff;text-shadow:none}71%,73%,90%,92%{color:var(--letter-color);text-shadow:0 0 4px var(--letter-color),0 0 11px color-mix(in srgb,var(--letter-color) 78%,transparent),0 0 20px color-mix(in srgb,var(--letter-color) 36%,transparent)}}
@keyframes techLetterGlowMobile{0%,76%,78%,93%,95%,100%{color:#fff;text-shadow:none}77%,94%{color:var(--letter-color);text-shadow:0 0 4px var(--letter-color),0 0 10px color-mix(in srgb,var(--letter-color) 70%,transparent),0 0 18px color-mix(in srgb,var(--letter-color) 30%,transparent)}}
@keyframes menuIndexSignal{0%,72%,100%{opacity:.48;transform:scaleX(.82);transform-origin:left}78%,88%{opacity:1;transform:scaleX(1);transform-origin:left;box-shadow:0 0 16px currentColor}}
@keyframes printPassC{0%,8%{opacity:0;clip-path:inset(0 100% 0 0)}10%{opacity:.95}25%,31%{opacity:.7;clip-path:inset(0 0 0 0)}40%,100%{opacity:0;clip-path:inset(0 0 0 0)}}@keyframes printPassM{0%,18%{opacity:0;clip-path:inset(0 100% 0 0)}20%{opacity:.9}35%,39%{opacity:.62;clip-path:inset(0 0 0 0)}48%,100%{opacity:0;clip-path:inset(0 0 0 0)}}@keyframes printPassY{0%,28%{opacity:0;clip-path:inset(0 100% 0 0)}30%{opacity:.9}45%,49%{opacity:.45;clip-path:inset(0 0 0 0)}58%,100%{opacity:0;clip-path:inset(0 0 0 0)}}@keyframes printPassK{0%,38%{opacity:0;clip-path:inset(0 100% 0 0)}40%{opacity:.72}55%,63%{opacity:.2;clip-path:inset(0 0 0 0)}72%,100%{opacity:0;clip-path:inset(0 0 0 0)}}@keyframes printRoller{0%,7%{left:-18%;opacity:0}10%{opacity:.8}27%{left:100%;opacity:.35}29%,100%{left:100%;opacity:0}}

@media (max-width:760px) {
  .flickerLetter{animation-name:letterGlowMobile}
  .techFlickerTitle .flickerLetter{animation-name:techLetterGlowMobile}
  .heroKeywords{font-size:12px;line-height:1.55;letter-spacing:.09em}
  .topbar{position:absolute;padding:18px 20px;mix-blend-mode:normal;justify-content:flex-end}
  .menuButton{position:absolute;top:25px;left:20px;right:auto;color:#fff}
  .projectLink{display:none}
  .hero{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);height:100vh;height:100svh;max-height:none;min-height:0}
  .world{width:100%;min-height:0;height:auto}
  .worldTech{grid-row:1}
  .worldPrint{grid-row:2}
  .worldContent{left:24px;right:24px;bottom:88px}
  .worldPrint .worldContent{left:24px;right:24px;top:88px;bottom:auto}
  .world h2{font-size:clamp(48px,15vw,68px);line-height:.8;letter-spacing:-.025em}
  .worldTech h2{font-size:clamp(38px,11.5vw,52px)}
  .worldPrint h2{font-size:clamp(40px,13vw,58px)}
  .eyebrow{display:none}
  .claim{font-size:8px;line-height:1.4;margin:14px 0 16px;letter-spacing:.19em}
  .discover{gap:12px;font-size:9px;letter-spacing:.2em}
  .discover .arrow{width:34px;height:34px;font-size:17px}
  .brandIntro{width:119px;left:auto;right:18px;top:18px;transform:none;padding:0;background:transparent;border-radius:0;filter:none;animation:none}
  .pixelCloud{display:none}
  .colorSeam{top:50%;left:0;right:0;width:100%;height:10px;bottom:auto;transform:translateY(-50%)}
  .colorSeam i{width:7px;height:7px;top:calc((var(--i)%3)*4px - 4px);left:calc(var(--i)*4.25%)}
  .worldMedia{object-position:center 45%}
  .worldPrint .worldMedia{object-position:center 36%}
  .ambientLoops{height:44%;opacity:.13}
  .worldPrint .ambientLoops{opacity:.11}
  .worldTech::after{background:linear-gradient(180deg,#17171b16 0,#17171b30 35%,#111115dc 72%,#0a0a0dfb 100%)}
  .worldPrint::after{background:linear-gradient(180deg,#082b2dd4 0,#082b2d58 36%,#062527bc 70%,#041b1df8 100%)}
  .statement{grid-template-columns:1fr;padding:90px 24px}
  .statement>p:last-child{grid-column:1}
  .services{grid-template-columns:1fr}
  .services article{min-height:520px;padding:70px 24px}
  .footerLine{gap:20px;flex-direction:column}
  .innerTopbar .menuButton{color:inherit}
  .innerTopbar .headerLogo{right:18px;top:18px;width:106px}
  .innerTopbar .projectLink{display:none}
  .menuOverlay{padding:80px 22px 32px;overflow:auto;justify-content:flex-start;align-items:stretch}
  .menuColumns{width:100%;grid-template-columns:1fr;gap:42px}
  .menuOverlay .menuColumns .menuArea{font-size:44px}
  .menuColumns .menuAbout{padding:0 24px 24px}
  .menuColumns .menuAbout::before{inset:35px 0 0}
  .menuColumns section>span{font-size:20px}
  .menuMeta{width:100%;margin-top:42px;gap:18px}
  .innerHero,.detailHero{min-height:70vh;padding:150px 24px 70px}
  .innerHero h1,.detailHero h1,.legalPage h1{font-size:clamp(54px,18vw,82px)}
  .innerHero h1{font-size:clamp(38px,11vw,62px);white-space:nowrap}
  .detailHero h1{font-size:clamp(28px,9vw,56px);overflow-wrap:normal;word-break:normal}
  .legalPage h1{font-size:clamp(28px,9vw,52px);white-space:nowrap;letter-spacing:-.055em}
  .innerHeroCopy>p:last-child,.detailHero>p{font-size:18px}
  .techHeroImage{object-position:24% center}
  .techImageHero::after{inset:0;height:auto;background:linear-gradient(90deg,#090a0dd6 0,#090a0d63 70%),linear-gradient(0deg,#090a0df2 0,transparent 68%)}
  .digitalHeroImage{object-position:center}
  .innerHero.digitalImageHero h1{font-size:clamp(28px,8.6vw,44px);white-space:nowrap}
  .digitalImageHero::after{background:linear-gradient(90deg,#151725d9 0,#1517256e 70%),linear-gradient(0deg,#151725f5 0,transparent 68%)}
  .areaGrid{grid-template-columns:1fr}
  .areaGrid>a{min-height:320px;padding:42px 24px}
  .areaGrid h2{font-size:clamp(25px,7vw,40px);overflow-wrap:normal;word-break:normal}
  .areaGrid .arrow{right:24px;bottom:28px;width:52px;height:52px}
  .areaSwitch{padding:64px 24px;align-items:flex-start;gap:32px;flex-direction:column}
  .detailCopy{padding:80px 24px;grid-template-columns:1fr;gap:28px}
  .digitalGrid{grid-template-columns:1fr}
  .digitalGrid article{min-height:440px;padding:58px 24px}
  .digitalGrid h2{font-size:clamp(42px,14vw,66px)}
  .detailCopy h2{grid-row:auto}
  .legalPage main{padding:150px 24px 80px}
  .legalNotice{padding:26px}
  .legalContent section{padding:38px 20px 44px}
  .legalContent section::before{top:38px}
  .legalToc{padding:26px}
  .legalToc ol{columns:1}
  .aboutHero{min-height:62vh;padding:150px 24px 70px}
  .aboutHero h1{font-size:clamp(54px,18vw,82px)}
  .aboutHero>p:last-child{font-size:18px}
  .colorStatement{padding:80px 24px 88px}
  .colorStatement h2{font-size:clamp(30px,9.4vw,48px);margin:26px 0 44px}
  .homeTeamHeading{padding:74px 24px 54px;grid-template-columns:1fr;gap:24px}
  .homeTeamHeading>a{grid-column:auto}
  .teamGrid{grid-template-columns:1fr}
  .teamCard{padding:24px}
  .teamInfo h2{font-size:clamp(38px,12vw,58px)}
  .homeTeamGrid .teamPhoto{aspect-ratio:4/3}
  .aboutStatement{padding:86px 24px 92px}
  .subFooter{padding:42px 24px 30px;grid-template-columns:1fr;gap:30px;align-items:start}
  .subFooter nav{gap:13px 20px}
  .subFooterMail{justify-self:start}
}
@media (max-width:380px) {
  .hero{min-height:0}
  .world h2{font-size:45px}
  .claim{letter-spacing:.13em}
  .brandIntro{width:105px;right:16px;top:17px}
  .menuButton{left:16px;right:auto}
  .worldContent{bottom:76px}
  .worldPrint .worldContent{top:78px}
}
@keyframes brandInMobile { 0%,35%{opacity:0;filter:blur(7px);transform:translate(-50%,-50%) scale(.92)} 100%{opacity:1;filter:drop-shadow(0 10px 22px #0008);transform:translate(-50%,-50%) scale(1)} }
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

body.menu-open{overflow:hidden}.menuOverlay.open{display:flex}
.static-logo-home{display:block}.no-js .menuButton{display:none}
@media(max-width:760px){footer{padding:82px 24px 28px}.statement h2{font-size:clamp(42px,14vw,72px)}}
