:root{--ink:#133440;--turquoise:#499fb2;--paper:#f6f7f4;--line:#d9dfdc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:var(--paper)}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #d78934;outline-offset:5px}img{display:block;max-width:100%}.wrap{width:min(1240px,88%);margin-inline:auto}.skip{position:absolute;left:16px;top:-80px;background:white;padding:16px;z-index:99}.skip:focus{top:10px}header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav{height:102px;display:flex;align-items:center;justify-content:space-between}.brand img{width:165px;height:90px;object-fit:contain}nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}.nav-contact{border:1px solid var(--line);padding:16px 20px}.nav-contact span{margin-left:24px}nav a:hover,.text-link:hover{color:#247d91}.menu{display:none}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;min-height:640px}.hero-copy{padding:76px 40px 50px max(6vw,calc((100vw - 1240px)/2))}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 28px;display:flex;gap:10px;align-items:center}.eyebrow>span{display:block;width:7px;height:7px;background:var(--turquoise);border-radius:50%}h1{font-size:clamp(58px,6.9vw,108px);letter-spacing:-6px;line-height:.99;font-weight:600;margin:0 0 30px}em{font-style:normal;color:var(--turquoise)}.intro{font-size:17px;line-height:1.7;color:#52646a;margin:0 0 30px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:19px 23px;background:var(--ink);color:white;font-size:13px;font-weight:600;transition:background .2s}.button:hover{background:#286c7e}.text-link{font-size:13px}.text-link span{margin-left:12px}.hero-note{display:flex;gap:15px;align-items:center;margin-top:42px;color:#68787c}.small-gear{font-size:42px;color:var(--turquoise)}.hero-note p{font-size:12px;line-height:1.7}.hero-image{position:relative;overflow:hidden;margin:26px 26px 26px 0;background:#244b59;min-height:500px}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover}.hero-image:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0c283cbb)}.image-label{position:absolute;bottom:25px;left:25px;right:25px;color:white;display:flex;justify-content:space-between;gap:15px;font-size:11px;z-index:1}.image-label span:last-child{letter-spacing:2px}.service-strip{background:var(--ink);color:white}.service-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-block:25px;text-transform:uppercase;letter-spacing:2px;font-size:12px}.service-strip i{font-style:normal;color:var(--turquoise);font-size:25px}.section{padding-block:96px}.section-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:0 90px}.section-heading .eyebrow{grid-column:1/-1}h2{font-size:clamp(36px,4vw,56px);letter-spacing:-2.2px;font-weight:500;line-height:1.08;margin:0}p{line-height:1.75}.section-heading>p:last-child{align-self:end;color:#65757a;font-size:15px;margin:0 0 4px}.services{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--line)}.services article{padding:28px 30px 5px 0}.services article+article{border-left:1px solid var(--line);padding-left:30px}.number{font-size:12px;color:#5798a5}h3{font-size:23px;letter-spacing:-.7px;font-weight:500;margin:30px 0 18px}.services p{font-size:14px;color:#65757a;min-height:100px}.services a{border-bottom:1px solid var(--line);padding-bottom:16px;display:flex;justify-content:space-between;margin-top:30px;font-size:12px;font-weight:bold}.projects{background:#e7eeeb;padding:85px 0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.project-grid p:not(.eyebrow){font-size:15px;color:#617379;max-width:420px;margin-block:25px}.project-names{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:30px}.project-names span{padding:8px 13px;font-size:12px;border:1px solid #c6d2cf;border-radius:2px}.light{background:white;color:var(--ink)}.light:hover{color:white}figure{margin:0}figure img{width:100%;aspect-ratio:1.25;object-fit:cover}figcaption{font-size:11px;margin-top:12px;color:#607378}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-text{padding-top:35px}.about-text p{font-size:15px;color:#64767b}.about-text .large{font-size:26px;letter-spacing:-.5px;line-height:1.4;color:var(--ink);margin:0 0 26px}.location{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:32px;padding-top:25px;font-size:12px;line-height:1.8}.location>span{font-size:32px;color:var(--turquoise)}.location strong{font-weight:500}.contact{padding:80px 0 35px;background:var(--ink);color:#fff}.contact-top{display:flex;justify-content:space-between;gap:70px;align-items:end}.contact h2{font-size:74px;letter-spacing:-3px}.contact-top>p{max-width:360px;color:#bbced3;font-size:15px}.contact-links{margin-top:50px;border-top:1px solid #44606a}.contact-links a{display:grid;grid-template-columns:1fr 2fr 40px;align-items:center;padding:26px 0;border-bottom:1px solid #44606a;gap:18px}.contact-links a:hover strong{color:#76c5d7}.contact-links span{font-size:12px;color:#bbced3}.contact-links strong{font-size:clamp(19px,2.5vw,34px);font-weight:400;letter-spacing:-.6px}.contact-links b{font-size:27px;font-weight:400;text-align:right}.contact-small{font-size:11px;color:#a9c1c9;margin-top:35px}footer{padding-block:27px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#617379}footer p{margin:0}footer>div{display:flex;gap:25px}
@media(min-width:1600px){.hero-copy{padding-left:100px}}@media(max-width:1000px){nav{gap:20px}.hero-copy{padding:55px 30px 35px 6vw}h1{letter-spacing:-4px}.hero{min-height:580px}.hero-image{min-height:480px;margin-right:15px}.section-heading,.project-grid,.about{gap:35px}.services article{padding-right:20px}.services article+article{padding-left:20px}.services p{min-height:130px}}@media(max-width:700px){html{scroll-padding-top:90px}.nav{height:80px}.brand img{height:71px;width:130px}.menu{display:flex;gap:13px;background:none;border:1px solid var(--line);padding:10px 12px;font-size:12px}nav{display:none;position:absolute;top:80px;background:white;width:100%;left:0;padding:20px 6%;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:22px}.nav-contact{display:flex;justify-content:space-between}.hero{display:flex;flex-direction:column}.hero-copy{padding:43px 6% 25px}h1{font-size:72px;letter-spacing:-4px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:23px}.intro{font-size:15px}.actions{gap:20px}.button{font-size:12px;padding:17px 18px}.hero-note{margin-top:25px}.hero-image{min-height:340px;margin:0 6% 25px}.service-strip .wrap{font-size:9px;letter-spacing:1px;gap:10px;flex-wrap:wrap;justify-content:center;padding-block:17px}.service-strip i{font-size:16px}.section{padding-block:60px}.section-heading,.project-grid,.about{display:block}h2{font-size:38px;letter-spacing:-1.6px}.section-heading>p:last-child{margin-top:25px}.services{display:block;margin-top:30px}.services article,.services article+article{padding:24px 0;border-left:0;border-bottom:1px solid var(--line)}h3{margin-top:17px}.services p{min-height:0}.services a{margin-top:20px}.projects{padding-block:60px}.project-grid figure{margin-top:40px}.about-text{padding-top:30px}.contact{padding-top:55px}.contact h2{font-size:65px}.contact-top{display:block}.contact-top>p{margin-top:25px}.contact-links{margin-top:30px}.contact-links a{grid-template-columns:1fr 30px;gap:10px}.contact-links span{grid-column:1}.contact-links strong{grid-column:1;font-size:22px}.contact-links b{grid-column:2;grid-row:span 2}.contact-small{font-size:10px}footer{flex-direction:column;gap:15px}footer>div{gap:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Current MiWork 3D wordmark */
.brand img{width:190px;height:auto;max-height:94px;object-fit:contain}@media(max-width:700px){.brand img{width:145px;height:auto;max-height:74px}}

/* Complete standalone website */
.hero-image{background:#318cdd;display:flex;align-items:center}.hero-image>img{position:static;height:auto;object-fit:contain}.hero-image:after,.hero-image .image-label{display:none}.subpage{padding-block:55px 85px;min-height:65vh}.back-link{display:inline-block;font-size:13px;margin-bottom:35px}.subpage h1{font-size:clamp(36px,5vw,65px);letter-spacing:-2px;line-height:1.12;overflow-wrap:anywhere;margin-bottom:35px}.legal-content{max-width:780px}.legal-content h2{font-size:25px;letter-spacing:-.5px;margin:35px 0 15px}.legal-content p{font-size:16px;line-height:1.8}.legal-content a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.sub-intro{max-width:660px;color:#52646a;font-size:19px}.wide-image{max-width:900px;margin:40px auto}.wide-image img{aspect-ratio:auto;object-fit:contain}.project-detail{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-block:45px;border-block:1px solid var(--line)}.project-detail img{width:100%}.project-more,.project-cta{padding-top:45px}.project-more p{max-width:740px}.project-cta h2,.project-more h2{font-size:32px;letter-spacing:-1px}@media(max-width:700px){.hero-image{min-height:0}.project-detail{grid-template-columns:1fr}.subpage{padding-top:30px}.legal-content p{font-size:15px}.subpage h1{font-size:38px;letter-spacing:-1px}}

/* MiWork engineering showcase */
.engineering{background:#123442;color:white;padding:80px 0}.engineering-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center}.engineering p:not(.eyebrow){color:#c6d9dd;max-width:460px}.engineering figure img{aspect-ratio:4/3;object-fit:cover}.engineering figcaption{color:#b5cbd0}.engineering .button{margin-top:15px}
.tech-hero{position:relative;background:#102b35;color:white;min-height:650px;display:flex;align-items:center;isolation:isolate}.tech-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.tech-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,34,.94),rgba(6,26,34,.7) 45%,rgba(6,26,34,.12));z-index:-1}.tech-hero .wrap{padding-block:45px 65px}.tech-hero h1{font-size:clamp(50px,6vw,88px);letter-spacing:-4px;line-height:1.05;max-width:900px}.tech-hero em{color:#85d3e3}.tech-hero p:not(.eyebrow){font-size:19px;color:#dae5e8;margin-bottom:30px}.tech-intro{padding-block:85px}.tech-intro>p:not(.eyebrow){max-width:750px;color:#52646a;font-size:17px;margin-top:28px}.expertise{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px;border-top:1px solid var(--line);padding-top:30px}.expertise span{font-size:12px;color:#407d8d}.expertise h3{margin-top:20px}.expertise p{font-size:14px;color:#52646a}.gallery-section{padding:75px 0;background:#e7eeeb}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}.gallery-heading h2{font-size:40px}.gallery-heading>p{font-size:12px;color:#52646a}.tech-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px}.gallery-wide{grid-column:span 2}.gallery-open{position:relative;display:block;background:#203c45;overflow:hidden;height:320px}.gallery-open img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.gallery-open:hover img{transform:scale(1.035)}.zoom-mark{position:absolute;bottom:14px;right:14px;padding:9px 14px;background:white;color:#123442}.gallery-card figcaption{display:flex;gap:15px;color:var(--ink);margin-top:18px}.gallery-card figcaption>span{font-size:11px;color:#4d8795;padding-top:7px}.gallery-card h3{margin:0;font-size:19px;letter-spacing:-.4px}.gallery-card p{font-size:12px;line-height:1.65;color:#52646a;margin:8px 0 0}.tech-ending{padding-block:80px}.tech-ending h2{font-size:48px}.tech-ending>p:not(.eyebrow){max-width:620px}.photo-dialog{border:0;padding:55px 20px 20px;background:#102b35;color:white;max-width:95vw;width:1100px;max-height:95vh}.photo-dialog::backdrop{background:#001018df}.photo-dialog>img{width:100%;height:70vh;object-fit:contain}.photo-dialog>p{font-size:14px;text-align:center;margin:15px 0 0}.photo-close{position:absolute;right:18px;top:12px;background:white;color:#123442;border:0;padding:9px 14px;cursor:pointer}body.photo-open{overflow:hidden}
@media(max-width:900px){.tech-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.engineering-grid{gap:35px}.gallery-heading{display:block}.expertise{gap:20px}}
@media(max-width:700px){.engineering{padding-block:55px}.engineering-grid{display:block}.engineering figure{margin-top:35px}.tech-hero{min-height:580px}.tech-hero h1{font-size:51px;letter-spacing:-2px}.tech-hero:after{background:linear-gradient(90deg,#061a22e8,#061a2299)}.tech-hero p:not(.eyebrow){font-size:16px}.tech-intro{padding-block:55px}.expertise{grid-template-columns:1fr;gap:15px}.expertise article+article{border-top:1px solid var(--line);padding-top:20px}.gallery-section{padding-block:50px}.gallery-heading h2{font-size:34px}.tech-gallery{grid-template-columns:1fr;gap:30px}.gallery-wide{grid-column:auto}.gallery-open{height:auto;aspect-ratio:4/3}.gallery-open img{object-fit:contain}.tech-ending h2{font-size:36px}.tech-ending{padding-block:55px}}

/* Customer portal and correctly oriented HMI photograph */
.customer-portal{padding:90px 0;background:#e9f2f4;scroll-margin-top:20px}.portal-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px}.portal-copy h2{font-size:clamp(36px,3.7vw,52px)}.portal-intro{font-size:16px;color:#52646a;max-width:580px;margin-top:25px}.portal-steps{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.portal-steps span{font-size:10px;border:1px solid #b9d3da;padding:9px 11px;background:#f6fafb}.portal-features{display:grid;grid-template-columns:1fr 1fr;gap:20px 25px;margin-bottom:30px}.portal-features h3{font-size:18px;letter-spacing:-.3px;margin:10px 0}.portal-features p{font-size:13px;line-height:1.7;color:#52646a;margin:0}.portal-access{font-size:12px;color:#52646a;margin-top:17px}.portal-preview{background:white;padding:12px;box-shadow:0 22px 60px #12344220;border:1px solid #c7dce2;border-radius:12px}.portal-window{display:flex;align-items:center;gap:5px;padding:9px 3px 16px}.portal-window>span{width:7px;height:7px;border-radius:50%;background:#bfd7de}.portal-window b{font-size:10px;font-weight:500;margin-left:12px;color:#52646a}.portal-preview img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.portal-preview figcaption{padding:8px;font-size:10px}.portal-banner{background:#123442;color:white;padding:65px 0}.portal-banner h2{font-size:40px}.portal-banner p:not(.eyebrow){max-width:700px;color:#c6d9dd}.portal-banner .button{margin-top:15px}.hmi-rotate img{position:absolute;left:50%;top:50%;width:75%;height:133.333%;object-fit:contain;transform:translate(-50%,-50%) rotate(-90deg)}.hmi-rotate:hover img{transform:translate(-50%,-50%) rotate(-90deg)}.photo-dialog.hmi-dialog>img{width:min(70vh,80vw);height:min(70vh,80vw);margin:auto;transform:rotate(-90deg)}nav{gap:25px}@media(max-width:900px){.portal-layout{gap:30px}nav{gap:15px}}@media(max-width:700px){.customer-portal{padding-block:55px}.portal-layout{grid-template-columns:1fr;gap:30px}.portal-features{gap:15px}.portal-features h3{font-size:17px}.portal-banner h2{font-size:33px}.portal-preview{max-width:500px;margin:auto}.hmi-rotate{aspect-ratio:4/3}.portal-steps{gap:7px}}
/* Bewegung: Inhalte bleiben ohne JavaScript und bei reduzierter Bewegung sichtbar. */
@media (prefers-reduced-motion:no-preference){
.motion-ready{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready.is-visible{opacity:1;transform:none}
.hero-copy{animation:miwork-enter .85s ease both}
.hero-image>img{animation:miwork-image 1.4s ease-out both}
.button{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.button:hover{transform:translateY(-3px);box-shadow:0 8px 22px #13344020}
.button span{display:inline-block;transition:transform .25s ease}
.button:hover span{transform:translate(3px,-2px)}
.engineering figure,.projects figure{overflow:hidden}
.engineering figure img,.projects figure img{transition:transform .65s ease}
.engineering figure:hover img,.projects figure:hover img{transform:scale(1.035)}
.portal-features article{transition:transform .25s ease}
.portal-features article:hover{transform:translateY(-4px)}
@keyframes miwork-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes miwork-image{from{transform:scale(1.055)}to{transform:scale(1)}}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready{opacity:1;transform:none}}
