/* assets/fonts.css */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(font-72025d9b68.woff2) format('woff2'),url(font-72025d9b68.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(font-a699af1dea.woff2) format('woff2'),url(font-a699af1dea.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(font-e45972c7e9.woff2) format('woff2'),url(font-e45972c7e9.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(font-87e867b526.woff2) format('woff2'),url(font-87e867b526.ttf) format('truetype');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(font-e50f4fc888.woff2) format('woff2'),url(font-e50f4fc888.ttf) format('truetype');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(font-e348286ef6.woff2) format('woff2'),url(font-e348286ef6.ttf) format('truetype');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(font-b6ee934451.woff2) format('woff2'),url(font-b6ee934451.ttf) format('truetype');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(font-b253c3dd5c.woff2) format('woff2'),url(font-b253c3dd5c.ttf) format('truetype');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(font-0edaad50fd.woff2) format('woff2'),url(font-0edaad50fd.ttf) format('truetype');
}
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(font-4664a706f8.woff2) format('woff2'),url(font-4664a706f8.ttf) format('truetype');
}
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(font-c7e8ebe771.woff2) format('woff2'),url(font-c7e8ebe771.ttf) format('truetype');
}

/* assets/index.html.css */
:root{--ink:#F2F1ED;--bg:#0A0A0B;--muted:#87868C;--line:rgba(255,255,255,0.08);--accent:#8fbeff;--accent-dim:rgba(143,190,255,0.12);}
  *{box-sizing:border-box;margin:0;padding:0;}
  body{background:var(--bg);color:var(--ink);font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;}
  header{background:#000;display:flex;align-items:center;justify-content:space-between;padding:20px 48px;}
  .logo{font-family:'Sora',sans-serif;line-height:1.1;}
  .logo .l1{font-weight:800;font-size:15px;letter-spacing:0.02em;}
  .logo .l2{font-weight:400;font-size:11px;color:#A9A8A3;letter-spacing:0.06em;}
  nav ul{list-style:none;display:flex;gap:34px;}
  nav a{font-family:'Space Mono',monospace;font-size:12.5px;text-decoration:none;color:#8B8A85;display:flex;gap:6px;align-items:baseline;}
  nav a .n{color:#5A5954;}
  nav a.active{color:var(--ink);font-weight:700;}
  nav a.active .n{color:var(--accent);}
  .eyebrow{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:0.1em;color:var(--ink);display:flex;align-items:center;gap:12px;margin-bottom:20px;}
  .eyebrow::before{content:'';display:inline-block;width:28px;height:1px;background:var(--ink);}

  .photo-hero{position:relative;aspect-ratio:2.1/1;width:100%;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;}
  .photo-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(100%);z-index:0;}
  .photo-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg, rgba(10,10,11,1) 0%, rgba(10,10,11,0.75) 30%, rgba(10,10,11,0.15) 65%, rgba(10,10,11,0) 100%);z-index:1;}
  .hero-content{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:0 48px 44px;width:100%;}
  .hero-content h1{
    font-family:'Space Mono',monospace;font-weight:700;
    font-size:clamp(28px,3.8vw,48px);line-height:1.15;letter-spacing:-0.01em;
    text-transform:uppercase;margin-bottom:22px;max-width:22ch;
  }
  .hero-content p{font-size:16px;line-height:1.6;color:#D8D7D3;max-width:56ch;margin-bottom:14px;}

  .contact-dropdown{position:absolute;bottom:calc(100% + 10px);right:0;background:#151517;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,0.4);min-width:230px;padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity 0.15s ease, transform 0.15s ease, visibility 0.15s;z-index:20;}
  .contact-menu{position:relative;}
  .contact-menu:hover .contact-dropdown,.contact-menu:focus-within .contact-dropdown{opacity:1;visibility:visible;transform:translateY(0);}
  .contact-dropdown a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:6px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:500;}
  .contact-dropdown a:hover{background:rgba(255,255,255,0.05);}
  .contact-dropdown .ic{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent-dim);color:var(--accent);font-size:14px;flex-shrink:0;}
  .contact-btn{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,0.06);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--ink);font-family:'Inter',sans-serif;font-weight:600;font-size:14px;padding:13px 22px;border-radius:8px;border:1px solid rgba(255,255,255,0.25);cursor:pointer;white-space:nowrap;transform:translateY(8px);}

  .nl-form{display:flex;align-items:stretch;background:rgba(255,255,255,0.08);border:1px solid var(--line);}
  .nl-form input{border:none;background:transparent;padding:12px 16px;color:var(--ink);font-family:'Inter',sans-serif;font-size:13.5px;outline:none;}
  .nl-form input::placeholder{color:#B4B3AF;}
  .nl-form button.submit{background:var(--accent);color:#0A0A0B;border:none;padding:0 20px;cursor:pointer;font-size:15px;font-weight:700;}
  .bar-label{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:0.06em;color:#C7C6C2;display:block;margin-bottom:10px;}

  
  .bar-inline-2{display:flex;align-items:center;justify-content:space-between;gap:48px;width:100%;margin-top:8px;}
  .bar-inline-2 .nl-form input{width:260px;}


  @media (max-width:900px){.photo-hero{aspect-ratio:1.1/1;}}

/* assets/site.css */
:root{--accent:#8fbeff;--ink:#f2f1ed;--bg:#0a0a0b;--muted:#aaa9a7;--line:#29292d;--sans:'Sora',Arial,sans-serif;--mono:'Space Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.6}a{color:inherit}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}img{max-width:100%}h1,h2,h3,h4{line-height:1.2}p{font-size:1rem}a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid #8fbeff;outline-offset:5px}section[id]{scroll-margin-top:110px}[hidden]{display:none!important}
.global-header{position:sticky;top:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:22px 3.5%;background:rgba(10,10,11,.97);border-bottom:1px solid #252529;color:#f2f1ed}.brand{display:block;font-family:Sora,Arial,sans-serif;font-weight:800;font-size:15px;text-decoration:none;line-height:1.15;flex-shrink:0}.brand small{display:block;font-weight:400;font-size:12px;letter-spacing:.12em;color:#aaa9a7;margin-top:4px}.global-header nav{display:flex;gap:30px}.global-header nav a{font-family:var(--mono);font-size:14px;text-decoration:none;color:#b7b6b5}.global-header nav a span{color:#82828b}.global-header nav a:hover,.global-header nav a[aria-current]{color:#8fbeff}.global-header nav a[aria-current] span{color:#8fbeff}.menu-toggle{display:none;background:none;color:#f2f1ed;border:1px solid #555;padding:9px 14px}.skip{position:fixed;top:-100px;left:20px;z-index:2000;background:#fff;color:#000;padding:12px}.skip:focus{top:8px}
.site-layout{max-width:1700px;margin:auto}.site-layout.has-side{display:grid;grid-template-columns:170px minmax(0,1fr)}main{min-width:0}.section-nav{position:sticky;top:110px;align-self:start;padding:35px 18px 30px 28px;font-size:14px;line-height:1.5}.section-nav span{display:block;font-family:var(--mono);color:#aaa;font-size:12px;text-transform:uppercase;margin-bottom:18px}.section-nav a{display:block;text-decoration:none;padding:9px 0 9px 12px;border-left:1px solid #303036;color:#99999f}.section-nav a:hover,.section-nav a.active{color:#f2f1ed;border-color:#8fbeff}
.global-footer{background:#101012;border-top:1px solid #29292d;padding:65px 5% 24px;display:grid;grid-template-columns:1.1fr 1fr 1.2fr .8fr;gap:34px;color:#c2c1bd;clear:both}.global-footer h2{font:12px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#92929b;margin-bottom:20px}.global-footer a:not(.brand){display:block;text-decoration:none;font-size:14px;margin:8px 0}.global-footer p{font-size:14px}.global-footer .copyright{grid-column:1/-1;border-top:1px solid #29292d;padding-top:24px;font-size:12px}.form-note{display:block;font-size:12px;color:#b4b3b0;margin-top:8px}.nl-form input{min-width:0}.btn,.button{display:inline-block;text-decoration:none;padding:13px 22px;border:1px solid #54545b;color:inherit;border-radius:5px;font-size:14px}.button.primary{background:#8fbeff;color:#0a0a0b;border-color:#8fbeff}.content-section{padding:85px 5%;max-width:1280px;margin:auto}.content-section h2{font:600 clamp(28px,3.3vw,44px)/1.12 Sora,Arial,sans-serif;margin:0 0 28px}.content-section p{max-width:66ch;color:#b8b7b4}.home-offer{border-top:1px solid #29292d;padding:24px 0}.home-offer summary{cursor:pointer;font:600 24px Sora;display:flex;justify-content:space-between}.home-offer summary::after{content:'+';color:#8fbeff}.home-offer[open] summary::after{content:'−'}.home-offer p{margin:24px 0}.home-offer a{color:#8fbeff;font:14px var(--mono)}.home .photo-hero{min-height:650px;aspect-ratio:1.9}.home .hero-content{padding:90px 5% 50px}.home .hero-content h1{max-width:none}.home .photo-hero::after{background:linear-gradient(0deg,#0a0a0b 0%,rgba(10,10,11,.75) 32%,transparent 90%)}.home .hero-content p{max-width:58ch}.contact-dropdown{z-index:50}.contact-btn{transform:none}
@media(max-width:1100px){.global-header nav{gap:16px}.global-header nav a{font-size:12px}.site-layout.has-side{grid-template-columns:140px minmax(0,1fr)}.section-nav{padding-left:15px}.bar-inline-2{gap:20px!important}}
@media(max-width:800px){.global-header{padding:16px 20px;flex-wrap:wrap}.menu-toggle{display:block}.global-header nav{display:none;width:100%;flex-direction:column;gap:0}.global-header nav.open{display:flex}.global-header nav a{padding:12px 0;font-size:14px}.site-layout.has-side{display:block}.section-nav{position:relative;top:auto;display:flex;gap:18px;overflow-x:auto;padding:16px 20px;white-space:nowrap;border-bottom:1px solid #29292d}.section-nav span{display:none}.section-nav a{padding:5px 0;border-left:0;border-bottom:1px solid #444}.global-footer{grid-template-columns:1fr 1fr;padding:42px 24px;gap:30px}.home .photo-hero{min-height:680px;aspect-ratio:auto}.home .hero-content{padding:180px 24px 35px}.home .hero-content h1{font-size:30px}.home .bar-inline-2{flex-direction:column;align-items:flex-start}.home .bar-inline-2 .nl-form input{width:100%}.contact-menu{align-self:flex-end}.home .hero-content p{font-size:16px}.content-section{padding:55px 24px}.global-footer a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.section-nav{scrollbar-width:none}.section-nav::-webkit-scrollbar{display:none}
.keynote-module .acc-item:not(.open) .desc,.format-module .tile:not(.active) .more,.acc-item:not(.open) .acc-body,.faq-item:not(.open) .faq-body{visibility:hidden}
.keynote-module .acc-item.open .desc,.format-module .tile.active .more,.acc-item.open .acc-body,.faq-item.open .faq-body{visibility:visible}
.format-module .tile:not(.active) .more a{visibility:hidden}
.global-header nav a{white-space:nowrap}
.global-header .brand,.global-footer .brand{color:#f2f1ed}
.site-layout:has(article) .dek,.site-layout:has(article) .meta,.site-layout:has(article) .backlink{color:#655e52}
.global-footer{text-align:left;font-family:Inter,Arial,sans-serif}
.global-footer .copyright{text-align:left;font-family:Inter,Arial,sans-serif}
.page-contact{padding:32px 5% 48px;display:flex;justify-content:flex-end;background:#0a0a0b;color:#f2f1ed}
.page-contact details{width:min(100%,300px)}
.page-contact summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;cursor:pointer;border:1px solid #686872;border-radius:8px;padding:15px 22px;background:#18181b;font:600 16px Inter,Arial,sans-serif}
.page-contact summary::-webkit-details-marker{display:none}
.page-contact summary::after{content:'+';color:#8fbeff;font-size:22px}
.page-contact details[open] summary::after{content:'−'}
.page-contact .contact-options{margin-top:10px;padding:8px;background:#18181b;border:1px solid #34343a;border-radius:8px}
.page-contact .contact-options a{display:block;padding:13px 14px;border-radius:4px;text-decoration:none;color:#f2f1ed;font:500 15px Inter,Arial,sans-serif}
.page-contact .contact-options a:hover{background:#292930;color:#8fbeff}
.home .bar-label{margin:12px 0 0}

.site-layout:has(article) .layout{max-width:1250px;grid-template-columns:280px minmax(0,1fr);gap:70px}
.site-layout:has(article) .layout aside{position:sticky;top:115px;background:#fff;border:1px solid #e2e2e2;border-radius:12px;box-shadow:0 3px 7px #00000013;padding:20px 17px;min-width:0;color:#414141}
.site-layout:has(article) .toclabel{font:500 13px/1.4 Inter,Arial,sans-serif;color:#414141;letter-spacing:0;margin:0 0 18px;text-transform:uppercase}
.site-layout:has(article) .toc{border:0;padding:0;margin:0;list-style:none}
.site-layout:has(article) .toc li{margin:0}
.site-layout:has(article) .toc a{position:relative;border:0;margin:0;padding:10px 0;display:block;font:400 16px/1.45 Inter,Arial,sans-serif;color:#858585;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}
.site-layout:has(article) .toc a:hover,.site-layout:has(article) .toc a[aria-current]{color:#393939}
.site-layout:has(article) .toc .n{display:none}
.site-layout:has(article) .toc-progress{position:absolute;right:calc(100% + 18px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px}
.site-layout:has(article) .toc-progress a{display:block;width:14px;height:3px;background:#b5b5b5}
.site-layout:has(article) .toc-progress a[aria-current]{background:#535353}
@media(max-width:900px){.site-layout:has(article) .layout{grid-template-columns:1fr;gap:35px}.site-layout:has(article) .layout aside{position:static;margin:0;padding:20px}.site-layout:has(article) .toc-progress{display:none}}




/* Animated Mensch-plus-Maschine mark beside the header logo. */
.global-header .brand{position:relative;padding-left:58px;padding-right:0}
.global-header .brand::before,.global-header .brand::after{content:"";position:absolute;left:20px;top:50%;width:8px;height:34px;border-radius:1px;background:#ed675a;transform-origin:center;transition:transform .55s cubic-bezier(.65,0,.2,1),height .3s ease,width .3s ease}
.global-header .brand::before{transform:translate(-50%,-50%) rotate(45deg)}
.global-header .brand::after{transform:translate(-50%,-50%) rotate(-45deg)}
.global-header .brand.header-mark-plus::before{transform:translate(-50%,-50%) rotate(0deg)}
.global-header .brand.header-mark-plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.global-header .brand.header-mark-turning::before,.global-header .brand.header-mark-turning::after{height:42px;width:9px}
@media(prefers-reduced-motion:reduce){.global-header .brand::before{transform:translate(-50%,-50%) rotate(45deg)}.global-header .brand::after{transform:translate(-50%,-50%) rotate(-45deg)}}

/* Simple line arrows for compact buttons and links. */
.btn-arrow{display:inline-block;position:relative;width:22px;height:1px;margin-left:9px;background:currentColor;vertical-align:middle}
.btn-arrow::after{content:'';position:absolute;right:0;top:50%;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:translateY(-50%) rotate(45deg)}
@media(max-width:600px){.btn-arrow{width:18px;margin-left:7px}}
/* Compact, mobile-safe footer identity: text lockup only, no X or divider. */
.global-footer .footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;max-width:100%;align-self:start}
.global-footer .footer-identity .brand{display:block;flex:none;max-width:100%;padding:0;text-align:left;color:#f2f1ed;text-decoration:none;font:700 19px/1.12 Sora,Arial,sans-serif;letter-spacing:-.045em;white-space:nowrap}
.global-footer .footer-identity .brand small{display:block;margin-top:4px;color:#aaa9a7;font:500 11px/1.15 Sora,Arial,sans-serif;letter-spacing:.14em}
.global-footer .footer-identity>p{margin:0;max-width:100%;color:#aaa9a7;font:400 14px/1.45 Sora,Arial,sans-serif;letter-spacing:0;white-space:normal;overflow-wrap:anywhere}
.global-footer .footer-identity-rule,.global-footer .footer-brand-mark{display:none!important}
@media(max-width:1050px){.global-footer .footer-identity{grid-column:1/-1}}
@media(max-width:600px){.global-footer{grid-template-columns:minmax(0,1fr)}.global-footer .footer-identity{grid-column:auto;gap:8px}.global-footer .footer-identity .brand{font-size:17px}.global-footer .footer-identity .brand small{font-size:10px}.global-footer .footer-identity>p{font-size:13px;line-height:1.4}}

/* assets/site-font.css */
/* Selected website font: Sora. Faces are loaded locally by fonts.css. */
:root{--sans:Sora,Arial,sans-serif;--mono:Sora,Arial,sans-serif}
:is(#site-font,html) body,:is(#site-font,html) body *{font-family:Sora,Arial,sans-serif!important}
:is(#site-font,html) body *::before,:is(#site-font,html) body *::after{font-family:inherit!important}

/* Navigation and small section headings: IBM Plex Mono. */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('tech-b0c618f6d8ea.woff2') format('woff2'),url('tech-b0c618f6d8ea.ttf') format('truetype')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('tech-feead6344d56.woff2') format('woff2'),url('tech-feead6344d56.ttf') format('truetype')}
:root{--mono:'IBM Plex Mono',monospace}
:is(#site-font,html) body :is(nav,nav *,.section-nav,.section-nav *,.toc,.toc *,.toclabel,.menu-toggle,.eyebrow,.eyebrow *,.kicker,.kicker *,.meta,.acc-meta,.cat,.tag,.bar-label,.group-title,.variant-bar,.variant-bar *){font-family:'IBM Plex Mono',monospace!important}

/* Prompt-Elemente der Startseite ebenfalls in IBM Plex Mono. */
:is(#site-font,html) body :is(.nl-form input,.hm-work-link,.hm-work-link *,.sandbox-wordmark,.sandbox-wordmark *,.hm-stack-backlog div,[data-stack-current]){font-family:'IBM Plex Mono',monospace!important}

/* assets/whatsapp.css */
.whatsapp-float{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:1000;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(37,211,102,.86);color:#082b16;box-shadow:0 6px 24px #0005;text-decoration:none;border:1px solid #ffffff25;transition:transform .15s,background .15s}.whatsapp-float svg{width:30px;height:30px;display:block;fill:currentColor}.whatsapp-float:hover{background:rgba(37,211,102,.98);transform:translateY(-2px)}.whatsapp-float:focus-visible{outline:3px solid #fff;outline-offset:4px}body{padding-bottom:85px!important}@media(max-width:600px){.whatsapp-float{width:52px;height:52px;right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.whatsapp-float svg{width:27px;height:27px}}@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}
.whatsapp-float{width:48px;height:48px;background:rgba(28,214,92,.94);box-shadow:0 0 18px rgba(28,214,92,.24),0 4px 16px #0004}.whatsapp-float svg{width:25px;height:25px}.whatsapp-float:hover{background:#1cd65c;box-shadow:0 0 24px rgba(28,214,92,.36)}@media(max-width:600px){.whatsapp-float{width:44px;height:44px}.whatsapp-float svg{width:23px;height:23px}}

/* assets/navigation-update.css */
.global-header #main-navigation{align-items:center}.nav-contact{position:relative}.nav-contact summary{list-style:none;cursor:pointer;padding:10px 16px;border:1px solid #6c829f;border-radius:5px;color:inherit;font-size:13px;white-space:nowrap}.nav-contact summary::-webkit-details-marker,.article-contents summary::-webkit-details-marker{display:none}.contact-short{display:none}.nav-contact .contact-options{position:absolute;right:0;top:calc(100% + 10px);min-width:240px;background:#151a22;border:1px solid #465467;box-shadow:0 12px 30px #0005;border-radius:8px;padding:8px}.global-header .nav-contact .contact-options a{display:block;padding:13px;color:#eef3fa;font-size:13px}.nav-contact .contact-options a:hover{background:#283345}.nav-contact summary:focus-visible,.article-contents summary:focus-visible{outline:2px solid #8fbeff;outline-offset:4px}.article-contents summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:3px 0;text-transform:uppercase}.article-contents summary:after{content:'+';margin-left:20px}.article-contents[open] summary:after{content:'−'}.article-contents .toc{margin-top:16px!important}.site-layout:has(article) .layout aside{align-self:start}.nav-contact:not([open]) .contact-options{display:none}.site-layout:has(article) .article-contents:not([open]) .toc{display:none}@media(max-width:1100px){.contact-long{display:none}.contact-short{display:inline}}@media(max-width:800px){.global-header #main-navigation{align-items:stretch}.nav-contact{margin-top:8px}.nav-contact summary{display:inline-flex}.nav-contact .contact-options{position:static;margin-top:8px;min-width:0}.site-layout:has(article) .layout aside{padding:17px 20px}}
.global-header .nav-contact .contact-options a{display:flex;align-items:center;gap:12px}.contact-icon{width:19px;height:19px;flex:0 0 19px}

/* Dark reading navigation, with a compact collapsed state. */
.site-layout:has(article) .layout aside{background:#202329;border:1px solid #414751;color:#f0f2f5;border-radius:10px;box-shadow:0 8px 24px #0002;padding:16px}.site-layout:has(article) .article-contents summary{color:#e3e8ef;font-size:12px;letter-spacing:.05em;margin:0}.site-layout:has(article) .toc a{color:#bbc3ce;font-size:14px;padding:11px 10px;border-radius:5px;white-space:normal;line-height:1.5}.site-layout:has(article) .toc a:hover,.site-layout:has(article) .toc a[aria-current]{color:white;background:#363d48}.site-layout:has(article) .toc-progress a{background:#616975;width:18px;height:3px;border-radius:2px}.site-layout:has(article) .toc-progress a[aria-current]{background:#1e2939;width:24px}.site-layout:has(article) .layout aside:not(:has(.article-contents[open])){width:110px;justify-self:start}.site-layout:has(article) .toclabel{color:#e3e8ef}@media(max-width:900px){.site-layout:has(article) .layout aside:not(:has(.article-contents[open])){width:auto;justify-self:stretch}}

/* Minimal reading rail, inspired by the supplied reference. */
.site-layout:has(article) .layout aside,.site-layout:has(article) .layout aside:not(:has(.article-contents[open])){width:30px;padding:0;background:transparent;border:0;box-shadow:none;border-radius:0;justify-self:start}.site-layout:has(article) .article-contents{position:relative}.site-layout:has(article) .article-contents summary{width:30px;padding:12px 10px;box-sizing:border-box}.site-layout:has(article) .article-contents summary:after{display:none}.reading-rail{display:flex;flex-direction:column;gap:7px}.reading-rail i{display:block;width:6px;height:2px;background:#62666b;opacity:.65}.reading-rail i.is-read{background:#242b35;opacity:1}.reading-rail i.is-current{width:10px;background:#151c25;opacity:1}.site-layout:has(article) .article-contents .toc{position:absolute;left:28px;top:0;margin:0!important;width:260px;background:#202329;border:1px solid #3a414b;border-radius:8px;padding:12px;box-shadow:0 8px 22px #0003;z-index:50}.site-layout:has(article) .toc-progress{display:none}.site-layout:has(article) .toc a{font-size:12px;padding:9px 8px}@media(max-width:900px){.site-layout:has(article) .layout aside{position:sticky;top:95px;z-index:30;height:0}.reading-rail{gap:5px}.site-layout:has(article) .article-contents .toc{width:min(250px,calc(100vw - 100px))}}

.global-header nav .home-icon{display:flex;align-items:center;justify-content:center;min-width:28px}.home-icon svg{display:block}

article [id]{scroll-margin-top:130px}.article-contents .toc{max-height:65vh;overflow:auto}

/* Clear hover, keyboard and selected states for the shared header. */
.global-header{--nav-active-blue:#64a8ff}
.global-header #main-navigation>a{transition:color .16s ease}
.global-header #main-navigation>a:is(:hover,:focus-visible,:active,[aria-current="page"]),
.global-header #main-navigation>a:is(:hover,:focus-visible,:active,[aria-current="page"]) span{color:var(--nav-active-blue)}
.global-header .nav-contact summary,.global-header .menu-toggle{transition:color .16s ease,background-color .16s ease,border-color .16s ease}
.global-header .nav-contact summary:is(:hover,:focus-visible,:active),
.global-header .nav-contact[open]>summary,
.global-header .menu-toggle:is(:hover,:focus-visible,[aria-expanded="true"]){background:var(--nav-active-blue);border-color:var(--nav-active-blue);color:#0b0d10}
.global-header .nav-contact .contact-options a:is(:hover,:focus-visible,:active){color:var(--nav-active-blue);background:#283345}
@media(prefers-reduced-motion:reduce){.global-header #main-navigation>a,.global-header .nav-contact summary,.global-header .menu-toggle{transition:none}}



/* --- Sprachumschalter: ruhige Pille statt vollwertiger Tab --- */
.global-header nav a.lang-switch{
  align-self:center;
  margin-left:4px;
  padding:3px 9px;
  border:1px solid #3a3a40;
  border-radius:20px;
  font-size:11px;
  letter-spacing:.08em;
  line-height:1.5;
  color:#8e8d8b;
}
.global-header nav a.lang-switch:hover,
.global-header nav a.lang-switch:focus-visible{color:#f2f1ed;border-color:#6a6a72}

/* assets/home-formats.css */
.format-module{
    --bg:#0A0A0B;
    --tile:#F7F6F3;
    --line:#E3E1DA;
    --accent:#2F6FDB;
    --ink:#F2F1ED;
    --muted:#87868C;
  }.format-module *{box-sizing:border-box;margin:0;padding:0;}.format-module{
    background:var(--bg);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
    padding:100px 72px 140px;
  }.format-module .header{max-width:640px;margin:0 auto 56px;}.format-module .meta{
    font-family:'Space Mono',monospace;
    font-size:12px;
    letter-spacing:0.06em;
    color:var(--muted);
    margin-bottom:18px;
  }.format-module h2{
    font-family:'Sora',sans-serif;
    font-weight:600;
    font-size:clamp(28px,3.4vw,40px);
  }.format-module .row{
    max-width:1100px;
    margin:0 auto;
    display:flex;
    gap:10px;
    height:460px;
  }.format-module .tile{
    position:relative;
    background:var(--tile);
    border:1px solid var(--line);
    border-radius:8px;
    flex:1;
    overflow:hidden;
    cursor:pointer;
    display:flex;
    flex-direction:column;
    padding:26px 26px 28px;
    box-shadow:0 30px 70px -24px rgba(0,0,0,0.65);
    transition:flex 0.55s cubic-bezier(.4,0,.2,1), border-color 0.3s ease, box-shadow 0.3s ease;
  }.format-module .tile.active{
    flex:3.4;
    border-color:#D2D0C8;
    box-shadow:0 40px 90px -20px rgba(0,0,0,0.75);
    cursor:default;
  }.format-module .idx{
    font-family:'Space Mono',monospace;
    font-size:15px;
    color:#9B9A93;
    margin-bottom:16px;
  }.format-module .icon-wrap{
    width:80px;height:80px;
    flex-shrink:0;
    margin-bottom:20px;
    transition:width 0.5s ease, height 0.5s ease;
  }.format-module .tile.active .icon-wrap{width:112px;height:112px;}.format-module .icon-wrap svg{width:100%;height:100%;overflow:visible;}.format-module .icon-wrap *{animation-play-state:paused !important;}.format-module .tile.active .icon-wrap *{animation-play-state:running !important;}.format-module .bottom{margin-top:auto;}.format-module .cat{
    font-family:'Space Mono',monospace;
    font-size:11px;
    letter-spacing:0.08em;
    color:var(--accent);
    margin-bottom:14px;
    white-space:nowrap;
  }.format-module .title{
    font-family:'Fraunces',serif;
    font-weight:500;
    font-size:16px;
    line-height:1.28;
    margin-bottom:10px;
    white-space:normal;
    color:#17171A;
    transition:font-size 0.5s ease;
  }.format-module .tile.active .title{font-size:22px;}.format-module .flip-char{display:inline-block;color:var(--accent);transform-style:preserve-3d;transition:transform 0.32s cubic-bezier(.4,0,.2,1);}.format-module .flip-char.flipping{transform:rotateY(90deg);}.format-module .duration{
    font-family:'Space Mono',monospace;
    font-size:11px;
    color:#84837C;
  }.format-module .more{
    max-height:0;
    opacity:0;
    overflow:hidden;
    transition:max-height 0.5s ease, opacity 0.4s ease;
    transition-delay:0s, 0s;
  }.format-module .tile.active .more{
    max-height:240px;
    opacity:1;
    transition-delay:0.15s, 0.25s;
  }.format-module .desc{
    font-size:14.5px;
    line-height:1.6;
    color:#4B4A45;
    max-width:42ch;
    margin:14px 0 16px;
  }.format-module .link{
    font-size:13.5px;
    color:var(--accent);
    text-decoration:none;
  }.format-module .link.disabled{color:#9B9A93;}@media (max-width:860px){.format-module .row{flex-direction:column;height:auto;}.format-module .tile{flex:none !important;}.format-module .tile.active{padding-bottom:32px;}.format-module .title{white-space:normal;}}.format-module .ring{transform-origin:32px 32px;animation:ring-pulse 3.6s ease-out infinite;}.format-module .ring2{animation-delay:1.2s;}.format-module .ring3{animation-delay:2.4s;}@keyframes ring-pulse{0%{r:4;opacity:0.9;stroke-width:2;}100%{r:22;opacity:0;stroke-width:0.4;}}.format-module .core-dot{animation:core-pulse 3.6s ease-in-out infinite;}@keyframes core-pulse{0%,100%{r:4;}50%{r:5.2;}}.format-module .pr-cursor-line{
    stroke-dasharray:36;
    stroke-dashoffset:36;
    animation:pr-type 5.4s ease-in-out infinite;
  }@keyframes pr-type{0%{stroke-dashoffset:36;}35%{stroke-dashoffset:0;}55%,100%{stroke-dashoffset:0;}}.format-module .pr-caret{animation:pr-caret-blink 0.8s step-end infinite, pr-caret-move 5.4s ease-in-out infinite;}@keyframes pr-caret-blink{50%{opacity:0;}}@keyframes pr-caret-move{0%{transform:translateX(0);}35%,100%{transform:translateX(36px);}}.format-module .pr-field-box{animation:pr-field-glow 5.4s ease-in-out infinite;}@keyframes pr-field-glow{0%,38%{stroke:#D8D6CF;}45%,58%{stroke:#2F6FDB;}75%,100%{stroke:#D8D6CF;}}.format-module .pr-arrow{animation:pr-arrow-fire 5.4s ease-in-out infinite;transform-origin:78px 52px;}@keyframes pr-arrow-fire{0%,42%{fill:#232327;stroke:#D8D6CF;}46%,60%{fill:#2F6FDB;stroke:#2F6FDB;}75%,100%{fill:#232327;stroke:#D8D6CF;}}.format-module .pr-spark{opacity:0;transform-origin:78px 22px;animation:pr-spark-think 5.4s ease-in-out infinite;}@keyframes pr-spark-think{
    0%,48%{opacity:0;transform:scale(0.5) rotate(0deg);}
    56%{opacity:1;transform:scale(1.15) rotate(25deg);}
    70%{opacity:1;transform:scale(1) rotate(0deg);}
    85%,100%{opacity:0;transform:scale(0.6) rotate(-15deg);}
  }.format-module .pr-response{
    stroke-dasharray:26;stroke-dashoffset:26;opacity:0;
    animation:pr-response-draw 5.4s ease-in-out infinite;
  }@keyframes pr-response-draw{
    0%,58%{stroke-dashoffset:26;opacity:0;}
    65%{opacity:1;}
    80%{stroke-dashoffset:0;opacity:1;}
    92%,100%{opacity:0;stroke-dashoffset:0;}
  }.format-module .cp-bezel{transform-origin:50px 50px;animation:cp-bezel-spin 22s linear infinite;}@keyframes cp-bezel-spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}.format-module .cp-needle{transform-origin:50px 50px;animation:cp-needle-find 6.5s cubic-bezier(.3,1.4,.4,1) infinite;}@keyframes cp-needle-find{
    0%{transform:rotate(20deg);}
    30%{transform:rotate(310deg);}
    48%{transform:rotate(210deg);}
    65%,88%{transform:rotate(250deg);}
    100%{transform:rotate(20deg);}
  }.format-module .cp-lock{opacity:0;animation:cp-lock-flash 6.5s cubic-bezier(.3,1.4,.4,1) infinite;}@keyframes cp-lock-flash{0%,63%{opacity:0;r:3;}68%{opacity:0.9;r:14;}80%,100%{opacity:0;r:16;}}

@media(max-width:600px){.work-intro h2{overflow-wrap:anywhere;font-size:27px}}.format-review{position:relative;background:#e8edf5;color:#17243a;padding:18px 5%;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font:13px Inter,sans-serif}.format-review nav{display:flex;gap:22px;flex-wrap:wrap}.format-review a{color:inherit}.format-review a[aria-current]{font-weight:700;text-decoration:underline}.format-module{scroll-margin-top:100px}.format-module .row{height:auto;max-width:none;gap:22px}.format-module .tile{min-width:0;min-height:0;cursor:default;box-shadow:none;flex:1;border-radius:0;padding:30px;transition:border-color .2s}.format-module .icon-wrap{position:static;width:100px;height:100px;margin:12px 0 30px}.format-module .icon-wrap *{animation-play-state:running!important}.format-module .title{font-size:25px;max-width:none;min-height:65px}.format-module .more,.format-module .tile:not(.active) .more,.format-module .tile:not(.active) .more a{opacity:1;max-height:none;overflow:visible;visibility:visible}.format-module .bottom{margin-top:0;display:flex;flex:1;flex-direction:column}.format-module .more{display:flex;flex:1;flex-direction:column}.format-module .desc{font-size:15px;margin:22px 0;max-width:none}.format-module .more .link{margin-top:auto;padding-top:18px;display:block}.format-module .duration{color:#686861}.format-module .cat{color:#245bb2}.format-module .idx{color:#686861}.format-module .header{margin-bottom:40px}.format-module .link:focus-visible{outline:2px solid #2f6fdb;outline-offset:5px}

.format-module .row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;position:relative}.format-module .row:before{content:'';position:absolute;height:1px;background:#51647e;top:82px;left:45px;right:45px}.format-module .tile{background:transparent;border:0;padding:0;overflow:visible}.format-module .idx{color:#8fbeff;font-size:12px}.format-module .icon-wrap{position:relative;background:#e9edf1;border-radius:50%;width:120px;height:120px;padding:16px;margin:0 0 38px}.format-module .cat{color:#8fbeff}.format-module .title{font-family:Sora,sans-serif;font-size:23px;color:#f5f6f8;min-height:65px}.format-module .duration{color:#b1bcc9}.format-module .desc{color:#c6cbd3}.format-module .more .link{color:#8fbeff;border-top:1px solid #3f4855}.format-module .header{max-width:700px;margin-bottom:50px}
@media(max-width:1100px){.format-module .row{gap:16px}.format-module .tile{padding:22px}.format-module .title{font-size:22px}}@media(max-width:800px){.format-module .row{display:flex;flex-direction:column;gap:20px}.format-module .tile{display:flex;padding:25px;min-height:0}.format-module .title{min-height:0;max-width:none;font-size:25px}.format-module .icon-wrap{position:static;margin:0 0 20px;width:90px;height:90px}.format-module .bottom{display:flex}.format-module .more{display:flex}.format-module .desc{margin:20px 0}.format-module .row:before{display:none}.format-module .idx{position:static;margin:0 0 18px}.format-module .duration{margin:10px 0}.format-module .cat{margin-bottom:12px}}

.home .format-module{padding:75px 5% 90px}.home .format-module .header{margin-left:0}.home .format-module .title{font-size:24px}@media(max-width:600px){.home .format-module{padding:50px 24px}.home .format-module .tile{padding:20px 0}}
/* Startseite: gleicher roter, kräftiger X/+ Akzent wie bei Mensch × Maschine */
.format-module .title .flip-char{color:#ff5d4f;font-family:'IBM Plex Mono',monospace;font-size:1.18em;font-style:normal;font-weight:700;line-height:.8;vertical-align:.02em}
.format-module .title .flip-char{font-size:1.04em}
.format-module .title .flip-char{font-size:.96em}

/* Startseite – Fokuslinse: Originalgrafiken bleiben animiert, Details öffnen per Klick. */
.home .format-module.lens-mode .row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;align-items:start;position:relative;overflow:visible}
.home .format-module.lens-mode .row:before{display:none}
.home .format-module.lens-mode .tile{position:relative;display:block;min-width:0;padding:0 0 24px;overflow:visible;background:transparent;border:0;cursor:pointer;opacity:1;transition:opacity .4s ease}
.home .format-module.lens-mode .tile:not(:last-child):before{content:'';position:absolute;z-index:0;top:76px;left:120px;width:calc(100% - 80px);height:1px;background:#51647e;pointer-events:none}
.home .format-module.lens-mode .idx{position:relative;z-index:2;margin:0 0 15px}
.home .format-module.lens-mode .icon-wrap{position:relative;z-index:2;width:120px;height:120px;margin:0 0 35px;padding:16px;border-radius:50%;background:#e9edf1;transform-origin:center;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease,background .4s ease}
.home .format-module.lens-mode .icon-wrap *{animation-play-state:running!important}
.home .format-module.lens-mode .bottom{position:relative;display:block;margin:0;padding-right:34px}
.home .format-module.lens-mode .cat{margin-bottom:13px}
.home .format-module.lens-mode .title{min-height:58px;margin-bottom:10px;font-size:23px}
.home .format-module.lens-mode .duration{margin:0}
.home .format-module.lens-mode .bottom:after{content:'+';position:absolute;right:0;top:42px;display:grid;place-items:center;width:27px;height:27px;border:1px solid #52647e;border-radius:50%;color:#8fbeff;font:300 20px/1 Sora,sans-serif;transition:transform .35s ease,color .35s,border-color .35s}
.home .format-module.lens-mode .more,.home .format-module.lens-mode .tile:not(.active) .more{display:block;max-height:0;opacity:0;overflow:hidden;visibility:hidden;transition:max-height .5s ease,opacity .35s ease,visibility 0s linear .5s}
.home .format-module.lens-mode .tile.active .more{max-height:260px;opacity:1;overflow:visible;visibility:visible;transition:max-height .55s ease,opacity .4s ease .12s,visibility 0s}
.home .format-module.lens-mode .tile.active .icon-wrap{transform:scale(1.28);background:#f5f6f7;box-shadow:0 0 0 16px rgba(143,190,255,.06),0 22px 55px rgba(0,0,0,.3)}
.home .format-module.lens-mode .tile.active .bottom:after{transform:rotate(45deg);color:#ef6558;border-color:#ef6558}
.home .format-module.lens-mode .row:has(.tile.active) .tile:not(.active){opacity:.48}
.home .format-module.lens-mode .desc{margin:22px 0 14px;color:#c6cbd3;font-size:14px;line-height:1.62}
.home .format-module.lens-mode .more .link{display:inline-block;margin:0;padding:11px 0 0;border-top:1px solid #3f4855;color:#8fbeff}
.home .format-module.lens-mode .tile:focus-visible{outline:1px solid #8fbeff;outline-offset:10px}
@media(max-width:800px){.home .format-module.lens-mode .row{grid-template-columns:1fr;gap:0}.home .format-module.lens-mode .tile{padding:25px 0;border-bottom:1px solid #34404f}.home .format-module.lens-mode .tile:not(:last-child):before{display:none}.home .format-module.lens-mode .icon-wrap{width:90px;height:90px;margin-bottom:20px}.home .format-module.lens-mode .tile.active .icon-wrap{transform:scale(1.12)}.home .format-module.lens-mode .title{min-height:0}}

/* assets/home-references.css */
.logobar-section{
  padding:34px 0 38px;
  background:#0a0a0a;
  border-top:0;
}
.logobar-label{
  margin:0 0 24px;
  padding:0 5%;
  color:#85909e;
  font:500 10px 'IBM Plex Mono','Space Mono',monospace;
  letter-spacing:.08em;
  text-align:center;
}
.marquee{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.marquee-track{
  display:flex;
  width:max-content;
  animation:reference-scroll 170s linear infinite;
}
.marquee-track .logo-item{
  flex-shrink:0;
  padding:0 30px;
  color:#aeb7c3;
  font:600 14px Sora,Arial,sans-serif;
  white-space:nowrap;
}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}
.logobar-section + .hm-contact-section{border-top:0}
@keyframes reference-scroll{to{transform:translateX(-50%)}}
@media(max-width:720px){
  .logobar-section{padding:30px 0 34px}
  .logobar-label{padding:0 24px;line-height:1.55}
  .marquee-track .logo-item{padding:0 22px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.marquee{overflow:auto}}

.home-references-link{display:block;color:inherit;text-decoration:none}.home-references-link:focus-visible{outline:2px solid #8fbeff;outline-offset:4px}

/* assets/text-studies.css */
.text-study{padding:90px 6%;background:#0a0a0a;scroll-margin-top:100px}.text-study nav{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:65px;font-size:12px}.text-study nav a{color:#8e9baa}.text-study nav a[aria-current]{color:#eee}.text-study h2{font-size:clamp(34px,4.1vw,66px);line-height:1.15;letter-spacing:-.045em;max-width:1000px;margin:25px 0 35px}.text-study .eyebrow{font-size:12px;letter-spacing:.08em;color:#9da9b8}.text-study p{color:#aeb4bd;font-size:clamp(16px,1.4vw,20px);line-height:1.85;max-width:780px}.quiet-link{display:inline-block;margin-top:25px;color:#bed1e8;text-decoration:none;font-size:14px}.text-study.v2{padding-top:110px;padding-bottom:110px}.text-study.v2 h2{font-size:clamp(40px,5vw,78px)}.text-study.v2 h2 span{color:#858b93}.text-study.v2 p{margin-left:34%;margin-top:50px;max-width:650px}.text-study.v3 h2{font-size:clamp(32px,3.5vw,57px);max-width:1100px}.text-study.v3 h2 span{display:block;color:#8b919a;margin-bottom:24px}.text-study.v3 h2 strong{display:block;font-weight:600;color:#f1f1ed;margin-top:38px}.text-study.v3 p{margin-top:40px}@media(max-width:700px){.text-study,.text-study.v2{padding:55px 24px}.text-study nav{gap:15px;margin-bottom:40px}.text-study.v2 p{margin-left:0}.text-study p br{display:none}}
.text-study .quiet-link{color:#8fbeff}.text-study .quiet-link:hover{text-decoration:underline}.text-study .quiet-link:focus-visible{outline:2px solid #8fbeff;outline-offset:6px}

/* inline */
.text-study{background:#0a0a0a}.text-study h2{border-left:3px solid #8fbeff;padding-left:30px}.text-study p,.text-study .quiet-link{margin-left:33px}.text-study .eyebrow{color:#8fbeff}@media(max-width:600px){.text-study h2{padding-left:18px}.text-study p,.text-study .quiet-link{margin-left:21px}}
