/* Startseite: project reference and next steps. */
.bg-home-project,.bg-home-actions{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#173857;box-sizing:border-box}
.bg-home-project *,.bg-home-actions *{box-sizing:border-box;min-width:0}
.bg-home-project{padding:80px 24px;background:#f3f7fb;border-top:1px solid #dce7f1;border-bottom:1px solid #dce7f1}
.bg-home-project-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center}
.bg-home-project-copy{padding:12px 0}
.bg-home-project-copy::before{content:'';display:block;width:52px;height:4px;background:#087bdf;border-radius:2px;margin-bottom:26px}
.bg-home-project-copy h2{font-size:clamp(1.75rem,2.7vw,2.5rem);line-height:1.17;letter-spacing:-.035em;color:#0b2b50;margin:0 0 26px;font-weight:750;overflow-wrap:anywhere}
.bg-home-project-copy p{font-size:1rem;line-height:1.85;color:#49627a;margin:0 0 20px;max-width:62ch}
.bg-home-project-copy p:last-child{margin-bottom:0}
.bg-home-reference{background:#fff;border:1px solid #d4e1ed;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px #0929470b}
.bg-home-reference>img{display:block;width:100%;height:260px;object-fit:cover;object-position:center 45%}
.bg-home-reference-body{padding:26px 28px 28px}
.bg-home-reference-body strong{display:block;color:#103b64;font-size:1.25rem;line-height:1.3;font-weight:750;margin-bottom:14px}
.bg-home-reference-body p{margin:0;font-size:.94rem;line-height:1.75;color:#536a7f}
.bg-home-reference-body a{display:table;margin-top:20px;color:#0966b7;font-weight:700;text-decoration:none;border-bottom:1px solid #a9cae7;padding-bottom:4px}
.bg-home-reference-body a:hover{color:#063e73;border-color:currentColor}
.bg-home-actions{max-width:1248px;padding:64px 24px 80px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;background:none}
.bg-home-career,.bg-home-contact{padding:40px;display:flex;flex-direction:column;align-items:flex-start;border-radius:18px}
.bg-home-career{background:linear-gradient(130deg,#071c38,#0b3b70);border:1px solid #184b7b;color:#f0f7ff}
.bg-home-contact{background:#edf4fa;border:1px solid #d0e0ed;color:#123858}
.bg-home-actions h2{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.2;letter-spacing:-.025em;margin:0 0 20px;font-weight:750;color:inherit;text-align:left}
.bg-home-actions p{font-size:1rem;line-height:1.8;margin:0 0 30px;color:#516980;max-width:55ch;text-align:left}
.bg-home-career p{color:#bfd2e5}
.bg-home-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;min-height:50px;border-radius:10px;background:#f1f8ff;color:#103d69;text-decoration:none;font-size:.95rem;line-height:1.5;font-weight:700;margin-top:auto;max-width:100%;white-space:normal}
.bg-home-button:hover{background:#dcedff}
.bg-home-links{width:100%;margin-top:auto;display:grid;gap:0}
.bg-home-link{display:flex;align-items:center;gap:12px;padding:15px 0;border-top:1px solid #c7d9e9;color:#14578b;font-weight:650;font-size:.95rem;line-height:1.5;text-decoration:none;white-space:normal}
.bg-home-link:hover{color:#073458}
.bg-home-actions .btn-icon{width:22px;height:22px;flex:0 0 22px;filter:none}
.bg-home-actions a span{overflow-wrap:anywhere}
.bg-home-project a:focus-visible,.bg-home-actions a:focus-visible{outline:3px solid #279ee9;outline-offset:5px}
@media(max-width:900px){.bg-home-project-inner{gap:32px}.bg-home-career,.bg-home-contact{padding:28px}.bg-home-reference>img{height:220px}}
@media(max-width:700px){.bg-home-project{padding:42px 20px}.bg-home-project-inner{grid-template-columns:minmax(0,1fr);gap:30px}.bg-home-project-copy{padding:0}.bg-home-reference>img{height:auto;aspect-ratio:16/10}.bg-home-reference-body{padding:22px}.bg-home-actions{padding:36px 20px 44px;grid-template-columns:minmax(0,1fr);gap:20px}.bg-home-career,.bg-home-contact{padding:26px 22px}.bg-home-button{width:100%}.bg-home-actions h2{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:no-preference){.bg-home-project a,.bg-home-actions a{transition:background-color .15s,color .15s}}

/* Hero, introduction and statistics: scoped to the start-page content only. */
.bg-home-page #home{box-sizing:border-box;min-height:clamp(520px,76svh,820px);height:auto;padding:80px 24px;text-align:left;justify-content:center;isolation:isolate;background-position:center}
.bg-home-page #home::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,19,38,.91),rgba(4,24,45,.64) 60%,rgba(4,24,45,.16));z-index:-1}
.bg-home-page #home .hero-box{box-sizing:border-box;width:100%;max-width:1200px;margin:auto;padding:0;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.bg-home-page #home h1{font:700 1.12rem/1.5 system-ui,sans-serif;letter-spacing:.04em;color:#9dd8ff;margin:0 0 22px}
.bg-home-page #home h2{font:750 clamp(2.3rem,5.3vw,4.7rem)/1.08 system-ui,sans-serif;letter-spacing:-.04em;max-width:900px;margin:0 0 28px;color:#f4f8ff;overflow-wrap:anywhere}
.bg-home-page #home p{max-width:710px;margin:0;color:#dae7f3;font:400 clamp(1rem,1.4vw,1.16rem)/1.8 system-ui,sans-serif}
.bg-home-page .welcome-section-unique{padding:76px 24px;background:#fff;text-align:left}
.bg-home-page .welcome-section-unique::before,.bg-home-page .welcome-section-unique::after,.bg-home-page .welcome-container-unique::before{display:none}
.bg-home-page .welcome-container-unique{max-width:1200px;margin:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:64px;row-gap:20px;text-align:left}
.bg-home-page .welcome-container-unique h2{grid-column:1;grid-row:1 / span 2;margin:0;color:#103353;font:750 clamp(1.8rem,3vw,2.6rem)/1.2 system-ui,sans-serif;letter-spacing:-.035em;max-width:420px;overflow-wrap:anywhere}
.bg-home-page .welcome-container-unique p{grid-column:2;margin:0;max-width:none;color:#4b647b;font:400 1rem/1.85 system-ui,sans-serif}
.bg-home-page #starke{padding:72px 24px;background:#f3f7fb;text-align:left;font-family:system-ui,sans-serif}
.bg-home-page #starke,.bg-home-page #starke *{box-sizing:border-box}
.bg-home-page #starke h2{max-width:1200px;margin:0 auto 12px;color:#103353;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.2;font-weight:750;letter-spacing:-.035em}
.bg-home-page #starke>p{max-width:1200px;margin:0 auto;color:#58718a;font-size:1.05rem;line-height:1.6;font-weight:400}
.bg-home-page #starke .zahlen-grid{max-width:1200px;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px auto 24px}
.bg-home-page #starke .zahlen-box{min-width:0;padding:24px;column-gap:18px;row-gap:6px;align-content:center;align-items:center;background:#fff;border:1px solid #d5e2ed;border-radius:14px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transition:none}
.bg-home-page #starke .zahlen-box::before{display:none}
.bg-home-page #starke .zahlen-box:hover{transform:none;box-shadow:none}
.bg-home-page #starke .zahlen-box>div{width:72px;height:72px;max-width:72px;aspect-ratio:1;align-self:center;border:0;border-radius:12px;background:#edf5fc;box-shadow:none}
.bg-home-page #starke .zahlen-icon{width:90%;height:90%;object-fit:contain}
.bg-home-page #starke .zahlen-box strong{min-width:0;font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.2;letter-spacing:-.025em;font-weight:750;color:#103353;text-overflow:clip;overflow:visible}
.bg-home-page #starke .zahlen-box small{font-size:.95rem;line-height:1.45;font-weight:500;color:#536c82}
.bg-home-page #starke .highlight-box{max-width:1200px;margin:0 auto;padding:26px 12px;gap:0;background:#0b2c51;box-shadow:none;border:1px solid #24496d;border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.bg-home-page #starke .highlight-item{min-width:0;padding:4px 24px;background:none;border:0;border-right:1px solid #385575;border-radius:0;box-shadow:none}
.bg-home-page #starke .highlight-item:last-child{border-right:0}
.bg-home-page #starke .highlight-item strong{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.3;font-weight:750;letter-spacing:-.02em;color:#f1f7ff}
.bg-home-page #starke .highlight-item small{font-size:.94rem;line-height:1.5;font-weight:400;color:#b8cfe4;margin-top:6px;overflow-wrap:anywhere}
@media(max-width:1000px){.bg-home-page #starke .zahlen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bg-home-page .welcome-container-unique{gap:24px 32px}.bg-home-page #starke .highlight-item{padding:4px 16px}}
@media(max-width:700px){
 .bg-home-page #home{min-height:560px;min-height:76svh;padding:60px 20px;background-position:58% center}
 .bg-home-page #home::before{background:linear-gradient(90deg,#031326e6,#04182d99)}
 .bg-home-page #home h2{font-size:clamp(2.15rem,8.2vw,3.3rem)}
 .bg-home-page .welcome-section-unique{padding:42px 20px}
 .bg-home-page .welcome-container-unique{display:block}
 .bg-home-page .welcome-container-unique h2{max-width:none;margin-bottom:24px}
 .bg-home-page .welcome-container-unique p+p{margin-top:18px}
 .bg-home-page #starke{padding:42px 20px}
 .bg-home-page #starke .zahlen-grid{gap:12px}
 .bg-home-page #starke .zahlen-box{padding:20px 16px;grid-template-columns:minmax(0,1fr);gap:10px}
 .bg-home-page #starke .zahlen-box>div{grid-column:1;grid-row:1;width:64px;height:64px}
 .bg-home-page #starke .zahlen-box strong{grid-column:1;grid-row:2;font-size:1.45rem}
 .bg-home-page #starke .zahlen-box small{grid-column:1;grid-row:3;align-self:start}
 .bg-home-page #starke .highlight-box{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}
 .bg-home-page #starke .highlight-item{padding:16px;border:0}
}
@media(max-width:390px){.bg-home-page #starke .zahlen-grid{grid-template-columns:minmax(0,1fr)}.bg-home-page #starke .zahlen-box{grid-template-columns:64px minmax(0,1fr);column-gap:16px}.bg-home-page #starke .zahlen-box>div{grid-row:1 / span 2}.bg-home-page #starke .zahlen-box strong{grid-column:2;grid-row:1}.bg-home-page #starke .zahlen-box small{grid-column:2;grid-row:2}}

/* Center the introduction and statistics headings on every screen size. */
.bg-home-page .welcome-container-unique h2{grid-column:1 / -1;grid-row:auto;max-width:none;width:100%;text-align:center;margin:0 auto 12px}
.bg-home-page .welcome-container-unique p{grid-column:1 / -1;max-width:80ch;width:100%;margin:0 auto;text-align:center}
.bg-home-page #starke h2,.bg-home-page #starke>p{text-align:center}

/* Center the hero copy while retaining its readable line lengths. */
.bg-home-page #home .hero-box{text-align:center}
.bg-home-page #home h1,.bg-home-page #home h2,.bg-home-page #home p{text-align:center;margin-left:auto;margin-right:auto}
