:root{
  --night:#0c1320;
  --deep:#151f30;
  --forest:#202a39;
  --lime:#b9a788;
  --paper:#f6f5f2;
  --ink:#1b2432;
  --line:#c9ccd0;
  --muted:#596472;
}
body{background:var(--paper);color:var(--ink)}
::selection{background:#b9a788;color:#0c1320}
.site-header.solid,.mobile-nav.open,.site-footer{background:#0c1320}
.site-header{border-bottom-color:#ffffff31}
.desktop-nav a:after{background:#c5ad87}
.eyebrow{color:#967450}
.inner-hero .eyebrow,.home-hero .eyebrow,.dark-section .eyebrow,.site-footer .eyebrow,.project-showcase .eyebrow{color:#dcc4a4}
.home-hero{background:var(--sky,#0c1320)}
.hero-copy h1 em{color:#e1c8a5}
.hero-status b{color:#e1c8a5}
.scene:focus-visible{outline-color:#dec9aa}
.route-band{background:#dfe3e6}
.route-band a{border-color:#b5bdc3}
.route-band a:hover{background:#d1d8dd}
.inner-hero{background:#141d2a}
.inner-hero:after{background:linear-gradient(0deg,#0c1320db,transparent 63%),linear-gradient(90deg,#0c132070,transparent 72%)}
.people-hero{background:#172131}
.people-hero .inner-title{color:#f7f6f3}
.dark-section,.technology-note{background:#172131;color:#f7f6f3}
.dark-section p,.dark-section .chapter p,.technology-note p{color:#d3dbe0}
.dark-section .chapter{border-color:#75818f80}
.dark-section .chapter b{color:#d9bd95}
.chapter b,.tech-index{color:#937452}
.quote-band{background:#e7e2d9}
.visual-feature{background:#eceae5}
.visual-feature.dark,.real-people{background:#1c2738;color:#f7f6f3}
.real-people figure{background:#151e2b}
.real-people .visual-copy p,.visual-feature.dark p{color:#d5dce0}
.real-people .visual-copy .fineprint{color:#bfc8ce}
.project-showcase{background:#1a2636}
.project-showcase p{color:#d8e0e4}
.page-end{background:#dfe3e6}
.technology-intro{background:#f6f5f2}
.tech-copy{background:#e8eaeb}
.tech-feature:nth-of-type(odd) .tech-copy{background:#f4f3f0}
.tech-copy ul{color:#596472}
.source-links a{color:#e0c5a4}
.site-footer{color:#f3f2ef}
.footer-main p{color:#cfd7de}
.footer-links{border-color:#7a859085}
.footer-base{color:#aebbc5}
.mobile-nav a[aria-current=page]{color:#e0c5a4}
.page-section:not(.dark-section){background:#f6f5f2}
.button-link{color:inherit}
.button-link:hover{color:#876743}
@media(max-width:980px){
  .route-band a{border-bottom-color:#b5bdc3}
}
@media(max-width:650px){
  .scene-shade{background:linear-gradient(180deg,#0c1320d8 0%,#0c132084 35%,#0c13202a 62%,#0c132083 100%)}
}

/* Unified navigation breakpoint and accessible small-text colours. */
.eyebrow{color:#765a3d}
.chapter b,.tech-index{color:#765a3d}
.site-footer .eyebrow,.dark-section .eyebrow,.inner-hero .eyebrow,.home-hero .eyebrow,.project-showcase .eyebrow{color:#e5cda9}
.hero-action{display:inline-flex;margin-top:27px;padding:11px 17px;border:1px solid #f8f7f4b0;border-radius:2px;background:#111a28a8;font-weight:600;font-size:13px;gap:20px;align-items:center}
.hero-action:hover,.hero-action:focus-visible{background:#f3eee5;color:#101726;text-shadow:none}
.simple-hero{background:#141d2a;color:#f8f7f4;padding:clamp(85px,9vw,145px) clamp(24px,8vw,145px) clamp(60px,7vw,105px)}
.simple-hero h1{font:500 clamp(52px,7vw,95px)/1.02 'Outfit',sans-serif;letter-spacing:-.045em;margin:15px 0 10px}
.simple-hero p{font-size:18px;max-width:680px;color:#d9e0e4}
.legal-content{max-width:1000px;margin:auto}.legal-content h2{font:500 clamp(26px,3vw,38px)/1.1 'Outfit',sans-serif;margin:38px 0 12px}.legal-content h2:first-child{margin-top:0}.legal-content p{max-width:790px}.legal-content a{text-decoration:underline;text-underline-offset:3px}.legal-content dl{display:grid;gap:12px;margin:30px 0}.legal-content dl div{display:grid;grid-template-columns:190px 1fr;gap:25px;padding:10px 0;border-bottom:1px solid var(--line)}.legal-content dt{font-weight:700}
@media(max-width:1180px){.desktop-nav{display:none}.menu-button{display:flex}.site-header{height:74px}.mobile-nav.open{position:fixed;inset:0;z-index:53;display:flex;flex-direction:column;justify-content:flex-start;gap:3px;padding:84px 8vw 35px;background:#0c1320;color:#f6f5e8;overflow-y:auto;overscroll-behavior:contain;max-height:100dvh}.mobile-nav a{font:500 clamp(30px,5vw,53px)/1.08 'Outfit',sans-serif;padding:6px 0;flex:none}.menu-button.open{position:fixed;top:14px;right:24px}.menu-button.open span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-button.open span:last-child{transform:translateY(-3.5px) rotate(-45deg)}}
@media(max-width:650px){.legal-content dl div{display:block}.simple-hero{padding-top:80px}.hero-copy{top:145px}.hero-action{margin-top:18px;padding:9px 14px}.route-band a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.route-band small{grid-column:1/-1}.route-band strong{min-width:0;font-size:clamp(25px,8vw,32px)}.route-band a span{grid-column:2;grid-row:2}}
@media(max-height:620px) and (max-width:1180px){.mobile-nav.open{padding-top:72px}.mobile-nav a{font-size:clamp(22px,4.5vh,34px);padding:3px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.light-glow{display:none}.scene-layer{transition:none}}
/* Bilingual navigation and contact details. */
.language-switch{font:700 12px 'Inter',sans-serif;letter-spacing:.08em;border:1px solid #ffffff70;padding:8px 10px;color:#f8f7f4;flex:none;margin-left:18px}
.language-switch:hover,.language-switch:focus-visible{background:#f5f2ec;color:#111a28}
.contact-section{align-items:start}.contact-section>div>p{max-width:570px;font-size:17px}.contact-details{background:#e9e5dd;padding:clamp(26px,4vw,58px);box-shadow:0 8px 28px #10172610;min-width:0}.contact-details h3{font-size:clamp(29px,3vw,44px);margin:15px 0 27px;line-height:1.1}.contact-email{display:inline-flex;align-items:baseline;gap:12px;max-width:100%;overflow-wrap:anywhere;font-size:clamp(18px,2.15vw,30px);font-weight:650;line-height:1.3;color:#172131;text-decoration:underline;text-decoration-color:#a57a59;text-underline-offset:6px}.contact-email:hover,.contact-email:focus-visible{color:#9d7650}.contact-email span{font-size:.7em;text-decoration:none}.contact-divider{height:1px;background:#bdb8ae;margin:clamp(32px,4vw,55px) 0 32px}.contact-address{margin-top:15px;line-height:1.8}.contact-address strong{font-weight:700}
@media(max-width:650px){.contact-details{padding:27px}.contact-email{font-size:clamp(18px,5.2vw,25px)}.language-switch{padding:7px 9px;margin-right:13px}}.language-switch{padding:7px 9px;margin-right:13px}}
.mobile-nav .mobile-language{border-top:1px solid #ffffff55;margin-top:15px;padding-top:20px;color:#e5cda9;font-size:clamp(23px,4vw,30px)}
@media(max-width:980px){.route-band{grid-template-columns:repeat(2,minmax(0,1fr))}.route-band a{min-width:0}.route-band strong{overflow-wrap:anywhere}.visual-feature,.visual-feature.reverse{grid-template-columns:minmax(0,1fr)}.visual-feature>*{min-width:0}.visual-copy h2{overflow-wrap:anywhere}}
@media(max-width:650px){.route-band{grid-template-columns:minmax(0,1fr)}}
html[lang=de] h1,html[lang=de] h2,html[lang=de] h3,html[lang=de] strong,html[lang=de] p{hyphens:auto;overflow-wrap:anywhere}
@media(max-width:650px){.section-grid,.technology-intro,.technology-note,.tech-feature,.tech-feature.reverse{grid-template-columns:minmax(0,1fr)}.section-grid>*,.technology-intro>*,.technology-note>*,.tech-feature>*,.tech-copy{min-width:0}.dark-section .chapter{grid-template-columns:55px minmax(0,1fr)}.dark-section .chapter>*{min-width:0}.inner-title h1{overflow-wrap:anywhere}.page-end h2{overflow-wrap:anywhere}}
