.project-page{--case-space:65px}
.project-page section[id]{scroll-margin-top:112px}
.project-page a:focus-visible,.project-page button:focus-visible{outline:2px solid var(--blue);outline-offset:6px}
.skip-content{position:fixed;z-index:100;top:8px;left:8px;padding:14px;background:white;transform:translateY(-150%)}.skip-content:focus{transform:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.case-hero{padding:123px 0 43px}.case-hero:after{opacity:.6;inset:88px 0 0 58%}
.case-back{display:inline-flex;gap:14px;align-items:center;font-size:13px;color:#626b72;margin-bottom:29px}.case-back:hover{color:var(--blue)}
.case-hero .eyebrow{margin-bottom:16px}
.case-hero h1{font-size:clamp(46px,5vw,72px);line-height:1.04;letter-spacing:-.047em}.case-hero h1 em{margin-top:.07em}
.case-hero .lead{font-size:18px;line-height:1.65;max-width:740px;margin-top:23px;margin-bottom:0}
.case-work{font-size:13px;line-height:1.65;color:#68727a;margin:18px 0 0;max-width:820px}
.case-nav .wrap{align-items:center}.case-nav .wrap>div{display:flex;gap:32px}.case-nav a:hover{color:var(--blue)}
.case-section{padding:var(--case-space) 0}.case-section h2{font-weight:400;font-size:clamp(31px,3.3vw,43px);line-height:1.12;letter-spacing:-.035em;margin:0}
.case-section .eyebrow{margin-bottom:16px}.case-section-head{margin-bottom:30px}
.case-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.case-feature{padding:25px 28px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.case-feature:hover{background:#f7fbfd}
.case-feature-icon{color:var(--blue);height:31px;width:31px}.case-feature-icon svg{width:100%;height:100%}
.case-feature h3{font-size:21px;font-weight:450;margin:19px 0 10px;letter-spacing:-.018em}.case-feature p{font-size:14px;color:#626b72;line-height:1.7;margin:0}
.case-integration{background:#111a20;color:white}.case-integration-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:75px;align-items:center}
.case-integration .eyebrow{color:#73c5ed}.case-integration-copy>p:not(.eyebrow){color:#b8c5cc;font-size:15px;margin-top:21px;line-height:1.75}.case-integration-copy>p:last-child{margin-bottom:0}
.case-scenario strong{display:block;font-size:12px;color:#d5e6ef;font-weight:600;margin-bottom:6px}
.case-map{text-align:center}.map-input{display:flex;align-items:center;justify-content:center;gap:22px;color:#c8d7de;font-size:11px;letter-spacing:.12em}.map-input i{font-style:normal;color:#678090}.map-stem{height:24px;width:1px;background:#386079;margin:auto}
.map-core{width:218px;border:1px solid #467794;padding:19px 12px;margin:auto;background:#172630}.map-core small{display:block;color:#91b7cb;font-size:9px;letter-spacing:.17em}.map-core strong{font-size:32px;line-height:1.65;font-weight:400;display:block;letter-spacing:-.025em}.map-core span{font-size:11px;color:#a4b9c5;letter-spacing:.07em}
.map-systems{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;gap:12px;padding-top:20px}.map-systems:before{content:"";height:1px;position:absolute;top:0;left:calc(12.5% - 4px);right:calc(12.5% - 4px);background:#386079}
.map-systems>div{position:relative;border:1px solid #324b5a;padding:17px 5px}.map-systems>div:before{content:"";height:20px;width:1px;position:absolute;left:50%;top:-21px;background:#386079}
.map-systems b{font-size:16px;font-weight:450;display:block}.map-systems small{font-size:9px;display:block;color:#9bb0bc;margin-top:7px}.map-caption{color:#91a9b6;font-size:10px;letter-spacing:.02em;margin:18px 0 0}
.map-systems-six{grid-template-columns:repeat(3,minmax(0,1fr));padding:14px;border:1px solid #386079;gap:11px}
.map-systems-six:before,.map-systems-six>div:before{display:none}
.case-technical{background:white}.case-specifications{border-top:1px solid var(--ink)}
.case-specifications table{width:100%;border-collapse:collapse;text-align:left}
.case-specifications thead{background:#f4f6f7}.case-specifications th,.case-specifications td{padding:16px 18px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.6}
.case-specifications thead th{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#59676f;font-weight:650}.case-specifications tbody th{font-weight:550;width:23%}.case-specifications td{color:#59676f}.case-specifications td:nth-child(2){width:35%}
.case-contact{padding:62px 0}.case-contact h2{font-size:clamp(34px,3.6vw,47px)}.case-contact-copy{max-width:590px;color:#e2f1f9;font-size:15px;margin:18px 0 0}.case-contact .contact-grid{grid-template-columns:1.4fr .6fr;gap:65px}
.case-list-hero{padding:145px 0 53px}.case-list-hero h1{font-size:clamp(48px,5.4vw,72px)}.case-list-hero .lead{margin-top:23px}
.case-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:0}
.case-project-card{min-height:0;transition:border-color .2s,transform .2s}.case-project-card:hover{border-color:var(--blue);transform:translateY(-3px)}
.case-project-card .project-art{height:190px;display:flex;align-items:center;justify-content:center}
.case-project-card .project-art:before{inset:22px}
.case-house-mark{width:113px;height:88px;color:rgba(210,235,248,.7)}
.case-project-card .project-meta{padding:25px 25px 27px}
.case-project-card .project-meta small{font-size:10px;letter-spacing:.12em}
.case-project-card .project-meta h2{font-size:27px;line-height:1.17;letter-spacing:-.025em;margin:13px 0 13px;font-weight:400}
.case-project-card .project-meta p{font-size:14px;line-height:1.65;margin:0}
.case-project-card .project-meta .project-role{font-size:12px;color:var(--blue);line-height:1.6;margin-top:12px}
.case-project-card .project-meta{flex:1;display:flex;flex-direction:column;align-items:flex-start}
.case-project-card .text-link{padding-top:21px;margin-top:auto!important}
.case-project-card .text-link{font-size:12px;margin-top:21px}.case-project-card .text-link>span{margin-left:9px}
@media(min-width:901px) and (max-width:1250px){.project-page .nav-wrap{height:auto;min-height:88px}.project-page .brand img{width:185px!important}.project-page .main-nav{gap:11px}.project-page .main-nav>a:not(.nav-cta){font-size:11px}.project-page .nav-cta{font-size:11px;padding:10px}.case-integration-grid{gap:42px}}
@media(max-width:900px){.project-page{--case-space:52px}.case-hero{padding:103px 0 37px}.case-back{margin-bottom:27px}.case-hero h1{font-size:clamp(44px,7.5vw,64px)}.case-hero .lead{font-size:17px;max-width:660px}.case-nav .wrap{align-items:flex-start}.case-nav .wrap>span{margin-bottom:7px}.case-integration-grid{grid-template-columns:1fr;gap:32px}.case-map{max-width:610px;width:100%;margin:0 auto}.case-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-contact .contact-grid{grid-template-columns:1fr;gap:28px}.case-contact .contact-card{max-width:390px}.case-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-list-hero{padding-top:130px}}
@media(max-width:560px){.case-hero h1{font-size:clamp(38px,10.2vw,54px);letter-spacing:-.055em}.case-hero .eyebrow{font-size:10px}.case-hero .lead{font-size:16px;margin-top:20px}.case-work{font-size:12px;margin-top:15px}.case-back{font-size:12px;margin-bottom:25px}.case-nav .wrap>div{gap:12px 20px;flex-wrap:wrap;font-size:10px}.case-nav .wrap>span{font-size:10px}.case-section h2{font-size:31px}.case-section-head{margin-bottom:26px}.case-feature-grid{grid-template-columns:1fr}.case-feature{padding:23px;display:grid;grid-template-columns:29px 1fr;gap:0 17px}.case-feature-icon{width:27px;height:27px;grid-row:1/3}.case-feature h3{margin:0 0 9px;font-size:20px}.case-feature p{grid-column:2;font-size:14px}.map-systems{gap:7px}.map-systems>div{padding:15px 2px}.map-systems b{font-size:14px}.map-systems small{font-size:8px;letter-spacing:-.025em}.map-core{width:205px}.case-specifications table,.case-specifications tbody,.case-specifications tr,.case-specifications td,.case-specifications tbody th{display:block;width:100%}.case-specifications thead{display:none}.case-specifications tr{padding:15px 0;border-bottom:1px solid var(--line)}.case-specifications tbody th{padding:0 0 7px;border:0;font-size:16px}.case-specifications td{padding:3px 0;border:0;width:100%!important;font-size:13px}.case-specifications td:before{content:attr(data-label) ": ";font-size:12px;color:#354651;font-weight:600}.case-contact{padding:50px 0}.case-contact h2{font-size:35px}.case-project-grid{grid-template-columns:1fr}.case-project-card .project-art{height:185px}.case-project-card .project-meta h2{font-size:27px}.case-list-hero h1{font-size:43px}.case-list-hero{padding-top:125px;padding-bottom:41px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-page *{transition:none!important;animation:none!important}}
@media(max-width:560px){.case-hero-area h1 em{font-size:clamp(30px,8.7vw,48px)}.map-systems-six{padding:10px;gap:9px}.map-systems-six small{font-size:9px;letter-spacing:0}}

.case-area{text-transform:none;white-space:nowrap}
.case-feature h3,.pro-option h3,.pro-steps h3{hyphens:auto;overflow-wrap:break-word}
.map-systems small{hyphens:auto;overflow-wrap:anywhere}
.pro-remote-flow strong{display:block;overflow-wrap:break-word;hyphens:auto}
@media(min-width:901px) and (max-width:1350px){html[lang="de"] .project-page .brand img{width:165px!important}html[lang="de"] .project-page .main-nav{gap:10px}html[lang="de"] .project-page .main-nav>a{font-size:10px!important}html[lang="de"] .project-page .nav-cta{padding:10px}}
.case-feature-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.map-bus{width:160px;margin:auto;padding:12px;border:1px solid #386079;background:#172630;font-size:18px;letter-spacing:.1em}
@media(max-width:560px){.case-feature-grid-four{grid-template-columns:1fr}}
.map-systems-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.map-systems-two:before{left:calc(25% - 3px);right:calc(25% - 3px)}
.pro-hero{padding-top:140px}
.pro-options,.pro-roles,.pro-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pro-option{border:1px solid var(--line);padding:32px;display:flex;flex-direction:column;align-items:flex-start}
.pro-option .eyebrow{font-size:10px;margin-bottom:18px}.pro-option h3{font-size:30px;font-weight:400;letter-spacing:-.025em;line-height:1.15;margin:0 0 18px}
.pro-option>p:not(.eyebrow){font-size:15px;color:#626b72;line-height:1.75;margin:0}.pro-option .text-link{font-size:13px;margin-top:23px}
.pro-roles{margin-top:28px}.pro-roles p{margin:0;font-size:14px;color:#626b72}.pro-roles strong{display:block;color:var(--ink);font-weight:550;margin-bottom:7px}
.pro-process{background:#f5f7f8}.pro-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;list-style:none;margin:0;padding:1px;background:var(--line)}
.pro-steps li{padding:28px;background:#fff}.pro-step-number{display:block;font-size:14px;font-weight:650;color:var(--blue);margin-bottom:22px}
.pro-steps h3{font-size:21px;line-height:1.25;font-weight:450;letter-spacing:-.015em;margin:0 0 13px}.pro-steps p{font-size:14px;line-height:1.7;color:#626b72;margin:0}
.pro-remote-flow{max-width:360px;width:100%;margin:auto;text-align:center}.pro-remote-flow>div{padding:20px;border:1px solid #324b5a}.pro-remote-flow small{display:block;font-size:9px;letter-spacing:.13em;color:#9bb0bc;margin-bottom:9px}.pro-remote-flow strong{font-size:25px;font-weight:400;letter-spacing:-.02em}.pro-remote-flow>span{display:block;color:#7397ac;line-height:1.5;font-size:23px}.pro-remote-flow .pro-remote-device{background:#172630;border-color:#467794}
.pro-examples>a{border-top:1px solid var(--line);padding:24px 0}.pro-examples small{font-size:10px;letter-spacing:.1em;color:var(--blue)}.pro-examples h3{font-size:25px;font-weight:400;letter-spacing:-.025em;margin:13px 0}.pro-examples h3 span{color:var(--blue)}.pro-examples p,.pro-other-services{font-size:14px;line-height:1.7;color:#626b72}.pro-examples p{margin:0}.pro-examples>a:hover h3{color:var(--blue)}.pro-other-services{border-top:1px solid var(--line);padding-top:25px;margin:4px 0 0;max-width:900px}
@media(max-width:900px){.pro-hero{padding-top:115px}.pro-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-option{padding:25px}.pro-option h3{font-size:27px}}
@media(max-width:560px){.pro-options,.pro-roles,.pro-examples,.pro-steps{grid-template-columns:1fr}.pro-options{gap:16px}.pro-roles{gap:22px}.pro-option h3{font-size:27px}.pro-steps li{padding:25px}.pro-step-number{margin-bottom:15px}.pro-examples{gap:0}.pro-hero{padding-top:112px}}
/* Allow room for all three languages in the existing navigation. */
.project-page .brand{flex-shrink:0}
.project-page .main-nav{gap:12px}
.case-hero h1,.case-list-hero h1,.case-project-card h2,.case-section h2{hyphens:auto;overflow-wrap:break-word}
@media(min-width:901px) and (max-width:1150px){
 .project-page .nav-wrap{height:88px;min-height:88px}
 .project-page .brand img{width:190px!important}
 .project-page .menu-toggle{display:block;width:36px;height:36px;position:relative}
 .project-page .menu-toggle span{display:block;width:24px;height:1px;background:#111;margin:7px}
 .project-page .main-nav{position:absolute;top:88px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:flex-start;padding:25px 30px;border-bottom:1px solid var(--line);gap:17px!important}
 .project-page .main-nav.open{display:flex}
 .project-page .main-nav>a:not(.nav-cta),html[lang="de"] .project-page .main-nav>a{font-size:13px!important}
 .project-page .nav-cta{font-size:13px;padding:12px 17px}
 .project-page .lang-switch{font-size:12px}
}
