/* Landingpage: the same Geist / ink / technical-paper vocabulary as the industry pages. */
.home-page{--home-paper:#edf2f5;--home-rule:#cbd7e0}
.home-page :is(p,li,span,a,label,input,button,select,textarea,small,h1,h2,h3,h4){font-family:var(--v-font)}
.home-page .home-wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.home-page .home-section{padding:96px 0;scroll-margin-top:90px}
.home-page .home-eyebrow{color:#1e56b5;font-size:.8rem;font-weight:600;letter-spacing:.03em;margin-bottom:24px}
.home-page .home-hero{padding:132px 0 72px;background:#fff;border-bottom:1px solid var(--home-rule)}
.home-page .home-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:64px;align-items:center}
.home-page .home-intro h1{font-size:clamp(2.8rem,4.2vw,4.3rem);line-height:1.07;letter-spacing:-.05em;font-weight:550;margin:0 0 28px;text-wrap:initial}
.home-page .home-intro h1 em{color:#1e56b5;font-style:normal;white-space:nowrap}
.home-page .home-lead{font-size:1.13rem;line-height:1.75;color:#4b5875;margin:0 0 28px;max-width:570px}
.home-page .home-lead strong{color:#0d1b3e;font-weight:600}
.home-page .home-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}
.home-page main .home-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:14px 21px;border:1px solid #1e56b5;border-radius:5px;background:#1e56b5;color:white;text-decoration:none;font-weight:550;line-height:1.4;transition:background .2s,transform .2s}
.home-page main .home-button:hover{background:#163f85;transform:translateY(-2px)}
.home-page main .home-button:active{transform:translateY(0)}
.home-page main .home-secondary{color:#0d1b3e;display:inline-flex;gap:12px;align-items:center;text-decoration:none;border-bottom:1px solid #b8c9db;padding:9px 0}
.home-page .home-assurance{font-size:.79rem;color:#53627b;margin-top:16px}
.home-page .home-byline{display:flex;gap:13px;align-items:center;border-top:1px solid #dce4e9;padding-top:24px;margin-top:34px;max-width:480px}
.home-page .home-byline img{border-radius:50%;object-fit:cover;width:46px;height:46px}
.home-page .home-byline p{margin:0;font-size:.8rem;line-height:1.5;color:#53627b}
.home-page .home-byline span,.home-page .home-byline strong{display:block}
.home-page .home-byline strong{margin-bottom:3px}
.home-page #hero-calc{display:block;min-width:0;padding:27px;background:#f1f5f7;border:1px solid #d5e0e7;border-top:3px solid #1e56b5;border-radius:2px 2px 10px 10px;box-shadow:0 2px 3px #0d1b3e04,0 16px 35px -22px #0d1b3e40}
.home-page .home-calc-top{display:flex;justify-content:space-between;gap:10px;color:#52617b;font-size:.76rem;padding-bottom:17px;border-bottom:1px solid #ccd9e3;margin-bottom:21px}
.home-page #calc-title{font-size:1.32rem;line-height:1.3;margin-bottom:25px;letter-spacing:-.02em}
.home-page .home-calc fieldset{border:0;margin:0 0 27px;padding:0}
.home-page .home-calc legend{font-size:.8rem;color:#4b5875;margin-bottom:9px}
.home-page .home-switch{display:flex;border:1px solid #bdcbd6;padding:4px;background:white;border-radius:5px;gap:4px}
.home-page .home-switch button{flex:1;min-height:41px;border:0;border-radius:3px;background:white;color:#4b5875;font-weight:550;font-size:.82rem;cursor:pointer;transition:background .15s,color .15s}
.home-page .home-switch button[aria-pressed=true]{background:#0d1b3e;color:#fff}
.home-page .home-switch button:hover:not([aria-pressed=true]){background:#edf2f5;color:#1e56b5}
.home-page .home-range-label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;margin-bottom:8px;font-size:.8rem;line-height:1.5}
.home-page .home-range-label label{color:#4b5875;max-width:170px}
.home-page #cost-label{font-size:1.06rem;font-weight:600;font-variant-numeric:tabular-nums}
.home-page #cost-range{width:100%;height:32px;accent-color:#1e56b5;cursor:pointer;display:block;border:0;border-radius:0;background:transparent;padding:0;box-shadow:none}
.home-page .home-range-bounds{display:flex;justify-content:space-between;font-size:.7rem;color:#53627b}
.home-page .home-result{padding:22px 0;border-top:1px solid #c0ceda;border-bottom:1px solid #c0ceda;margin-top:23px}
.home-page .home-result>span{font-size:.8rem;color:#4b5875}
.home-page #result-val{display:block;font-size:clamp(2.2rem,3.2vw,3.1rem);font-weight:600;letter-spacing:-.04em;line-height:1.35;color:#1e56b5;font-variant-numeric:tabular-nums}
.home-page .home-result p{font-size:.74rem;color:#4b5875;margin:4px 0 0}
.home-page .home-calc-note{font-size:.72rem;line-height:1.6;color:#52617b;margin:17px 0 12px}
.home-page main .home-text-link{display:inline-block;font-size:.85rem;font-weight:550;color:#1e56b5;text-decoration:none;border:0;border-bottom:1px solid #b6cce1;background:none;padding:5px 0;cursor:pointer;line-height:1.5}
.home-page main .home-text-link:hover{color:#0d1b3e;border-color:#0d1b3e}
.home-page :is(a,button,input,summary):focus-visible{outline:3px solid #00a7c4;outline-offset:4px}
.home-proof{background:#f5f7f9;padding:28px 0 22px}
.home-proof .home-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 36px}
.home-proof .home-wrap>div{padding-left:22px;border-left:2px solid #cad9e1}
.home-proof strong{font-size:1.85rem;letter-spacing:-.035em;display:block;font-weight:550}
.home-proof span{font-size:.83rem;color:#52617b;display:block}
.home-proof .home-wrap>p{grid-column:1/-1;font-size:.7rem;color:#627087;margin:0}
.home-page .home-editorial{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.home-page .home-section h2{font-size:clamp(2rem,3.2vw,3.1rem);font-weight:550;line-height:1.12;letter-spacing:-.04em;margin-bottom:24px;text-wrap:initial}
.home-page .home-section h3{font-size:1.1rem;font-weight:600;line-height:1.35}
.home-page .home-criteria article{display:flex;gap:22px;padding:26px 0;border-bottom:1px solid var(--home-rule)}
.home-page .home-criteria article:first-child{padding-top:4px}
.home-page .home-criteria h3{margin-bottom:8px}
.home-page .home-criteria p,.home-service-list p{color:#52617b;font-size:.94rem;line-height:1.7;margin:0}
.home-page .home-criterion-mark{font-size:2rem;color:#1e56b5;min-width:35px;line-height:1.2}
.home-tint{background:#edf2f5}
.home-section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:30px}
.home-section-heading>p{max-width:340px;color:#52617b;line-height:1.75;margin-bottom:25px}
.home-industry-featured{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-page main .home-industry{display:block;color:#0d1b3e;text-decoration:none}
.home-industry>div{overflow:hidden;border:1px solid #cedbe1;background:#e9f0f3}
.home-industry svg{display:block;width:100%;height:auto;transition:transform .25s}
.home-industry:hover svg{transform:scale(1.025)}
.home-page .home-industry h3{display:flex;align-items:center;justify-content:space-between;margin:14px 0 26px;font-size:1rem}
.home-industry h3 span{color:#1e56b5}
.home-industry-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;border-top:1px solid #c0cfd8;margin-top:7px}
.home-page main .home-industry-list a{display:flex;justify-content:space-between;gap:10px;color:#223652;border-bottom:1px solid #c0cfd8;text-decoration:none;padding:15px 0;font-size:.87rem}
.home-page main .home-industry-list a:hover{color:#1e56b5}
.home-service-list article{border-top:1px solid #cbd7e0;padding:22px 0}
.home-service-list article h3{margin-bottom:9px}
.home-page .home-fee-note{background:#edf2f5;padding:17px;font-size:.8rem}
.home-page .home-process{background:#f3f6f8}
.home-page #prozess>div{max-width:1130px}
.home-page .home-process .badge,.home-page .home-faq .badge{font-family:var(--v-font);background:none;padding:0;color:#1e56b5;font-size:.8rem;letter-spacing:.02em;border:0}
.home-page .home-process .pz-phase-card{background:white;box-shadow:none;border:1px solid #cad7e0;border-radius:4px}
.home-page .home-process .pz-phase-num{background:#1e56b5;box-shadow:none}
.home-page .home-process .pz-phase-title{font-size:1.04rem;line-height:1.5}
.home-page .home-process :is(.pz-box,.pz-bsfz-logo){border-radius:4px;box-shadow:none}
.home-page .home-process .pz-box-accent{background:#1e56b5}
.home-page .home-process .pz-box-title{font-size:.84rem;line-height:1.5}
.home-page .home-process .step-wrap{opacity:1;transform:none}
.home-page .home-process :is(.pz-flow-label,.pz-bsfz-logo,.pz-flow-icon-circle,.pz-box){opacity:1}
.home-page .home-process .pz-arrow-path{stroke-dasharray:none;stroke-dashoffset:0}
.home-page .home-process .pz-box-title[style]{color:white}
.home-page .home-process .pz-box-dark-entity{color:white}
.home-about{border-bottom:1px solid #d5dfe5}
.home-about-grid{display:grid;grid-template-columns:360px 1fr;gap:90px;align-items:center}
.home-portrait{background:#e7edf0;padding:25px 25px 17px}
.home-portrait img{width:100%;height:315px;object-fit:cover;object-position:50% 27%;filter:saturate(.65);border-radius:3px}
.home-portrait p{font-size:1rem;font-weight:600;margin:16px 0 0;line-height:1.5}
.home-portrait p span{display:block;font-size:.77rem;font-weight:400;color:#53627b}
.home-about-grid>div>p:not(.home-eyebrow){color:#52617b;margin-bottom:23px}
.home-page .home-faq>div{max-width:830px}
.home-page .home-faq .faq-wrap{border:0;border-bottom:1px solid #cbd7e0;border-radius:0;box-shadow:none}
.home-page .home-faq .faq-btn{padding:22px 0;font-weight:550;font-size:1rem;line-height:1.5;background:none}
.home-page .home-faq .faq-content{padding:0 0 24px;font-size:.95rem;line-height:1.75}
.home-contact{background:#eaf0f4}
.home-contact-details{align-self:center;border-left:1px solid #bccdda;padding-left:40px}
.home-contact-details>a{display:block;font-size:1.04rem;padding:4px 0;overflow-wrap:anywhere}
.home-contact-details>p{font-size:.9rem;color:#52617b;margin-bottom:16px}
.home-contact-details>h3{margin:26px 0 12px}
.home-contact-details hr{border:0;border-top:1px solid #bccdda;margin-top:25px}
.home-skip{position:fixed;left:20px;top:-100px;z-index:9999;background:#fff;padding:12px}
.home-skip:focus{top:10px}
.home-anchor{display:block;scroll-margin-top:90px}
.home-page .home-faq .faq-wrap.open .faq-body{max-height:none}
.home-page .home-process .pz-mobile-arrow{align-items:center}
@media(max-width:850px){.home-page .home-hero{padding-top:110px}}
@media(min-width:1024px){.home-page #prozess .pz-flowchart-wrap{min-height:510px}}
@media(max-width:1100px){.home-page .home-hero-grid{gap:32px;grid-template-columns:1.1fr 1fr}.home-page .home-intro h1{font-size:3.1rem}.home-page .home-editorial{gap:40px}.home-about-grid{gap:50px}.home-page #hero-calc{padding:22px}}
@media(max-width:850px){.home-page .home-hero-grid{grid-template-columns:1fr;gap:40px}.home-page .home-hero{padding-top:44px}.home-page .home-intro h1{font-size:clamp(2.6rem,6.5vw,3.8rem)}.home-page .home-intro h1 em{white-space:normal}.home-page #hero-calc{max-width:580px;width:100%}.home-page .home-editorial{grid-template-columns:1fr;gap:32px}.home-page .home-section{padding:64px 0}.home-section-heading{display:block}.home-section-heading>p{max-width:580px}.home-about-grid{grid-template-columns:260px 1fr;gap:28px}.home-portrait img{height:260px}.home-contact-details{border-left:0;border-top:1px solid #bccdda;padding:30px 0 0}.home-page .home-process .pz-bsfz-logo{margin:20px auto}.home-page .home-process .pz-col{width:100%;max-width:440px}.home-page .home-process .pz-bewilligung{margin:20px 0}}
@media(max-width:600px){.home-page .home-wrap{width:calc(100% - 40px)}.home-page .home-hero{padding:38px 0 38px}.home-page .home-intro h1{font-size:clamp(2.1rem,8.5vw,3rem)}.home-page .home-eyebrow{font-size:.72rem;margin-bottom:20px}.home-page .home-lead{font-size:1rem;line-height:1.75}.home-page .home-actions{gap:15px}.home-page .home-button{font-size:.9rem}.home-page .home-secondary{font-size:.86rem}.home-page .home-byline{margin-top:26px}.home-page #hero-calc{padding:20px}.home-page #result-val{font-size:2.5rem}.home-proof .home-wrap{grid-template-columns:1fr;gap:19px}.home-proof .home-wrap>div{display:flex;align-items:center;gap:20px}.home-proof strong{font-size:1.35rem;min-width:120px}.home-proof span{font-size:.76rem;max-width:150px}.home-page .home-section h2{font-size:2rem}.home-industry-featured{grid-template-columns:1fr;gap:10px}.home-page main .home-industry{display:grid;grid-template-columns:125px 1fr;gap:18px;align-items:center;border-bottom:1px solid #c0cfd8;padding-bottom:12px}.home-industry svg{height:92px;object-fit:contain}.home-page .home-industry h3{font-size:.95rem;margin:0;gap:10px}.home-industry-list{grid-template-columns:1fr}.home-about-grid{grid-template-columns:1fr}.home-portrait{max-width:310px}.home-page .home-process .pz-flowchart-wrap{display:flex!important;gap:12px}.home-page .home-process .pz-phase-card{min-height:100px}.home-page .home-process .pz-phase-title{font-size:.95rem}.home-page .home-process .pz-box{padding:14px 10px}.home-page .home-process .pz-boxes-stagger{gap:10px}.home-page .home-process .pz-box-entity{font-size:.66rem;padding:6px}.home-page .home-process .pz-mobile-arrow{display:block}.home-page .home-process .pz-flowchart-wrap .pz-col-2{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.home-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.home-page .home-process .pz-arrow-path{stroke-dashoffset:0!important}}
@media(max-width:850px){.home-page .home-hero{padding-top:110px}}
@media(max-width:600px){.home-page .home-hero{padding-top:104px}.home-page .home-process .pz-mobile-arrow{display:flex}}
.home-page .home-range-bounds,.home-page .home-calc-note,.home-page .home-result p,.home-proof .home-wrap>p,.home-page .home-eyebrow,.home-page .home-process .pz-box-entity{font-size:max(.75rem,12px)}

/* Review pass: stronger calculator, complete industry gallery, clear closing navigation. */
.home-page .home-faq .faq-btn{padding-inline:8px;align-items:flex-start}
.home-page .home-faq .faq-icon{transform:none!important;margin-top:2px;width:28px;height:28px;border-radius:50%;line-height:1}
.home-page .home-faq .faq-wrap.open .faq-icon .faq-plus-vertical{display:none}
.home-page .home-faq .faq-content{padding-inline:8px}
.home-page #hero-calc{border-top-width:5px;box-shadow:0 2px 3px #0d1b3e06,0 22px 44px -22px #0d1b3e40}
.home-page .home-result{position:relative;background:#0d1b3e;border:0;border-radius:5px;padding:25px 22px;margin-inline:-10px;overflow:hidden}
.home-page .home-result>span{color:#d0dfed;display:block;padding-right:65px;line-height:1.5;max-width:300px}
.home-page #result-val{color:white;font-size:clamp(2.5rem,3.4vw,3.5rem);letter-spacing:-.045em;position:relative;z-index:1}
.home-page .home-result p,.home-page .home-result strong{color:#bad0e4}
.home-page .home-result #rate-pill{color:#69d3dc}
.home-result-ring{position:absolute;width:86px;height:86px;right:12px;top:24px}
.home-result-ring svg{display:block;width:100%;height:auto}
.home-page #cost-range{height:38px;accent-color:#1e56b5}
.home-page #cost-range::-webkit-slider-thumb{box-shadow:none}
.home-page .home-group-link{display:table;margin-top:12px}
.home-page #kontakt{padding:70px 0;background:#e8eff4;border-bottom:1px solid #c4d4e0}
.home-page #kontakt h2{font-size:clamp(2.3rem,3.5vw,3.4rem)}
.home-industry-featured{row-gap:24px}
.home-page .v-footer{padding-top:50px;background:#0b1633}
.home-page .v-footer .footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.home-page .v-footer .footer-link,.home-page .v-footer .footer-link-inline{color:#b9c9de;min-height:36px;line-height:1.6;padding:6px 0}
.home-page .v-footer-about,.home-page .v-footer-meta{color:#a0b2cc}
.home-page .v-footer .footer-section-label{color:#c8d5e6}
.home-footer-topics{margin:25px 0;border-top:1px solid #31415d;border-bottom:1px solid #31415d;padding:15px 0;color:#c8d5e6}
.home-footer-topics summary{cursor:pointer;min-height:28px;font-size:.9rem}
.home-footer-topics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 28px;padding:20px 0}
.home-footer-topics:not([open])>.home-footer-topics-grid{display:none}
@media(max-width:850px){.home-page .v-footer .footer-grid{grid-template-columns:1fr 1fr;gap:30px}.home-footer-topics-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.home-page main .home-industry{grid-template-columns:145px 1fr}.home-industry svg{height:106px}.home-result-ring{width:65px;height:65px;right:10px;top:23px}.home-page #result-val{font-size:2.65rem}.home-page .home-result{padding:21px 17px}.home-page .home-result>span{font-size:.8rem;padding-right:60px}.home-page .v-footer .footer-grid>div:first-child{grid-column:1/-1}.home-page #kontakt{padding:52px 0}.home-page .home-contact-details{padding-top:25px}.home-page .v-footer .footer-link,.home-page .v-footer .footer-link-inline{min-height:44px}.home-footer-topics-grid{grid-template-columns:1fr 1fr;gap:8px 20px}}
.home-page .home-rate-arc{transition:stroke-dasharray .12s linear}
.home-page .home-result.is-confirmed{animation:calc-confirm .75s ease-out 1}
@keyframes calc-confirm{0%,100%{background-color:#0d1b3e;box-shadow:none}35%{background-color:#1e56b5;box-shadow:0 0 0 4px #56c9d2}65%{background-color:#163f85;box-shadow:0 0 0 2px #56c9d2}}
@media(prefers-reduced-motion:reduce){.home-page .home-rate-arc{transition:none}.home-page .home-result.is-confirmed{animation:none}}
