:root{color-scheme:dark;--bg:#030b13;--surface:#07131f;--text:#f2f5f8;--muted:#a9b7c6;--blue:#29a9fa;--line:#213343;--max:1280px;font-family:"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button,a{touch-action:manipulation}img{display:block;max-width:100%;height:auto}.container{width:min(var(--max),calc(100% - 112px));margin-inline:auto}.header{position:sticky;top:0;z-index:20;background:#030b13f2;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{width:150px;flex-shrink:0}.header nav{display:flex;align-items:center;gap:36px;font-size:.9rem}.header nav a:hover{color:var(--blue)}.nav-contact{border:1px solid #36526b;padding:10px 17px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;background:#02070d;overflow:hidden}.hero-art{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,#02070d 0%,#02070df5 25%,#02070d95 46%,#02070d00 70%),url('assets/ci-master.png');background-size:cover,auto 740px;background-repeat:no-repeat;background-position:center,right -120px top -5px;opacity:.88}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#02070d 3%,transparent 35%,transparent 85%,#02070d55)}.hero-content{padding-top:67px;padding-bottom:44px;position:relative}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.17em;color:var(--blue);margin:0 0 23px}.hero h1{font-size:clamp(2.5rem,4.55vw,4.4rem);font-weight:650;line-height:1.06;letter-spacing:-.035em;margin:0 0 28px;max-width:760px}.hero h1 span{color:var(--blue)}.hero-subline{font-size:1.1rem;color:#c7d2de;line-height:1.7;max-width:580px;margin:0 0 27px}.actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:48px;padding:11px 21px;font-weight:600;font-size:.9rem;border:1px solid transparent;cursor:pointer;transition:background .2s,border-color .2s}.primary{background:#0877d5;color:white;border-color:#148bee}.primary:hover{background:#0967b6}.secondary{background:#07111bc9;border-color:#436079}.secondary:hover{border-color:var(--blue)}.values{font-size:.85rem;margin-top:28px;color:#d2dce6}.values span{color:var(--blue);padding:0 9px}.disciplines{display:grid;grid-template-columns:repeat(4,1fr);position:relative;border-top:1px solid #345571}.disciplines a{padding:24px 19px;border-right:1px solid var(--line);font-size:.85rem;letter-spacing:.07em;display:flex;align-items:center;gap:15px}.disciplines a:first-child{padding-left:0}.disciplines a:last-child{border-right:0}.disciplines span{font-size:.75rem;color:var(--blue)}.disciplines b{font-weight:400;margin-left:auto;color:var(--muted)}.disciplines a:hover{color:var(--blue)}.section{padding-block:104px;scroll-margin-top:16px}h2{font-size:clamp(2rem,3.1vw,2.9rem);font-weight:550;letter-spacing:-.035em;line-height:1.16;margin:0 0 25px}h2 span{color:var(--muted)}h3{line-height:1.35;font-weight:550}p{margin:0 0 20px}.section-heading{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:70px;margin-bottom:42px}.section-heading>p{color:var(--muted);max-width:420px}.competence-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:linear-gradient(140deg,#08192a,#050e18)}.competence-grid article{padding:30px 25px;border-right:1px solid var(--line);display:flex;flex-direction:column;scroll-margin-top:110px}.competence-grid article:last-child{border:0}.field-number{color:var(--muted);font-size:.75rem;letter-spacing:.07em}.icon{height:44px;width:44px;color:var(--blue);margin:34px 0 12px}.competence-grid h3{font-size:1.25rem;min-height:5.1em;margin:0 0 20px}.competence-grid p{font-size:.95rem;color:var(--muted)}.competence-grid a{font-size:.85rem;border-top:1px solid var(--line);padding-top:20px;margin-top:auto}.competence-grid a span{float:right;color:var(--blue)}.competence-grid a:hover{color:var(--blue)}.engineering{background:linear-gradient(110deg,#091a2a,#06101b);border-block:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px}.prose{color:var(--muted)}.lead{font-size:1.2rem;color:var(--text)}.process{display:grid;grid-template-columns:repeat(4,1fr);padding:0;list-style:none;margin:64px 0 0}.process li{border-top:1px solid #2275ae;padding:27px 24px 0 0;position:relative}.process li:before{content:"";position:absolute;width:7px;height:7px;border:1px solid var(--blue);background:var(--bg);border-radius:50%;top:-5px;left:0}.process span{font-family:Consolas,monospace;color:var(--blue);font-size:.8rem}.process h3{font-size:1.15rem;margin:12px 0}.process p{font-size:.9rem;color:var(--muted);max-width:220px}.services>div{display:grid;grid-template-columns:1fr 1.8fr;gap:55px;padding:27px 0;border-top:1px solid var(--line)}.services>div:last-child{border-bottom:1px solid var(--line)}.services h3{margin:0;font-size:1.3rem}.services h3 span{font: .75rem Consolas,monospace;color:var(--blue);margin-right:28px}.services p{margin:0;color:var(--muted)}blockquote{margin:66px 0 0;padding-left:28px;border-left:2px solid var(--blue);font-size:clamp(1.3rem,2.15vw,2rem);font-weight:400;line-height:1.5}blockquote span{color:var(--blue)}.about{background:#07121d;border-block:1px solid var(--line)}.about .split{align-items:center}.about-brand{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:450px;background:radial-gradient(ellipse,#0b2b4690,transparent 67%)}.about-brand img{width:310px}.about-brand p{color:var(--muted);font-size:.85rem;margin:35px 0 0}.principles{margin:30px 0 0;padding-left:23px;border-left:2px solid var(--blue);font-size:1.07rem}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.contact>div>p:not(.eyebrow){max-width:500px;color:var(--muted)}.email{display:inline-flex;gap:40px;font-size:clamp(1.5rem,2.6vw,2.3rem);margin-top:20px;border-bottom:1px solid #216399;padding-bottom:10px}.email span{color:var(--blue)}form{padding:30px;background:#081622;border:1px solid var(--line)}form h3{margin:0 0 24px;font-size:1.4rem}label{display:block;font-size:.875rem;margin-bottom:17px}label span{color:var(--muted)}input,textarea,select{width:100%;display:block;color:var(--text);background:#040c14;border:1px solid #304352;border-radius:0;padding:11px;margin-top:7px;min-width:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-note,#form-status{font-size:.8rem;color:var(--muted);line-height:1.5}#form-status:empty{display:none}#form-status{margin:20px 0 0}.footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;flex-wrap:wrap;padding-block:34px;font-size:.8rem;color:var(--muted)}.footer .brand{width:100px}.footer p{margin:0}.footer>div{display:flex;gap:24px;margin-left:auto}.footer a:hover{color:var(--blue)}.prototype{width:100%;font-size:.75rem;letter-spacing:.04em;color:#8497aa}.skip{position:fixed;top:-80px;left:20px;padding:10px;background:var(--bg);z-index:50}.skip:focus{top:10px}.legal{max-width:800px;min-height:65vh}.legal h1{font-size:2.6rem}.legal .notice{padding:24px;border:1px solid var(--line);color:var(--muted)}
@media(min-width:1600px){.hero-art{background-position:center,right top -5px;background-size:cover,auto 820px}.hero-content{padding-block:85px 60px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.header nav{gap:20px}.hero-art{background-position:center,left 28vw top 0;opacity:.7}.competence-grid{grid-template-columns:repeat(2,1fr)}.competence-grid article{border-bottom:1px solid var(--line)}.competence-grid article:nth-child(2){border-right:0}.competence-grid article:nth-child(3){border-bottom:0}.competence-grid h3{min-height:2.7em}.split,.contact{gap:45px}.section-heading{gap:40px}.disciplines a{padding-inline:12px;gap:8px;font-size:.75rem}.process h3{font-size:1rem}}
@media(max-width:760px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.header-inner{min-height:74px;flex-wrap:wrap;gap:0}.brand{width:124px}.menu-toggle:not([hidden]){display:flex;gap:15px;align-items:center;background:none;color:white;border:1px solid var(--line);padding:8px 12px;font-size:.875rem}.header nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 20px}.header nav a{padding:13px 5px}.header nav .nav-contact{padding:11px;margin-top:8px}html.js .header nav:not(.is-open){display:none}.hero-content{padding-top:43px;padding-bottom:27px}.hero h1{font-size:clamp(2rem,8.5vw,3.6rem);max-width:100%;line-height:1.09}.hero-art{background-size:cover,auto 570px;background-position:center,left 4vw top 25px;opacity:.31}.hero-art:after{background:linear-gradient(90deg,#02070dab,transparent)}.eyebrow{font-size:.7rem;letter-spacing:.1em}.hero-subline{font-size:1rem;max-width:420px}.values{font-size:.75rem}.values span{padding:0 4px}.actions{gap:10px}.button{font-size:.85rem;padding:11px 15px;gap:16px}.disciplines{grid-template-columns:1fr}.disciplines a,.disciplines a:first-child{padding:16px 0;border-right:0;border-bottom:1px solid var(--line);font-size:.8rem}.disciplines a:last-child{border-bottom:0}.disciplines span{margin-right:14px}.section{padding-block:65px}.section-heading,.split,.contact{grid-template-columns:1fr;gap:20px}.section-heading{margin-bottom:28px}.section-heading>p{margin:0}.competence-grid{grid-template-columns:1fr}.competence-grid article,.competence-grid article:nth-child(3){border-right:0;border-bottom:1px solid var(--line);padding:25px}.competence-grid h3{min-height:0;font-size:1.3rem}.icon{margin-top:24px}.process{grid-template-columns:1fr 1fr;gap:30px 10px;margin-top:30px}.process h3{font-size:1rem;overflow-wrap:anywhere}.services>div{grid-template-columns:1fr;gap:15px}.services h3 span{margin-right:17px}blockquote{margin-top:40px;padding-left:20px}.about-brand{min-height:270px;order:2;margin-top:22px}.about-brand img{width:220px}.about-brand p{font-size:.75rem}.contact{gap:35px}form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.footer{gap:20px}.footer>div{margin-left:0;width:100%}.footer p{margin-left:auto}.legal h1{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(min-width:761px){.hero-art:after{background:linear-gradient(0deg,#02070d 12%,#02070d 23%,transparent 43%,transparent 85%,#02070d55)}}

@media(max-width:760px){.hero-art{height:420px;bottom:auto;background-size:cover,auto 700px;background-position:center,left 4vw top 0}.hero-art:after{background:linear-gradient(0deg,#02070d,transparent 80%)}}

.service-points{padding-left:18px;margin:5px 0 0;border-top:1px solid var(--line);padding-top:20px;color:#c5d2de;font-size:.9rem}.service-points li{margin-bottom:12px}.service-points li::marker{color:var(--blue)}.scope-note{max-width:900px;margin:32px 0 0;padding-left:22px;border-left:2px solid var(--blue);color:var(--muted)}

.software-development{display:grid;grid-template-columns:1fr 1.5fr;gap:55px;margin-top:44px;padding:34px;border:1px solid var(--line);background:var(--surface)}.software-development h3{font-size:1.6rem;margin:0}.software-development .prose p:last-child{margin-bottom:0}.scada-consulting{border-left:2px solid var(--blue);padding-left:20px;margin-block:26px}.scada-consulting h3{color:var(--text);font-size:1.2rem;margin:0 0 12px}@media(max-width:760px){.software-development{grid-template-columns:1fr;gap:22px;padding:24px}}

.contact{grid-template-columns:1fr}.contact>div{max-width:850px}.contact>div>p:not(.eyebrow){max-width:650px}

/* Visual refinement of the existing prototype. */
.section{padding-block:88px}
.section-heading{grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-bottom:36px}
.section-heading>p{max-width:560px;margin-top:40px;font-size:1rem}
.competence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border:0;background:none}
.competence-grid article{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 48px;align-content:start;gap:0 24px;padding:32px;border:1px solid var(--line);background:linear-gradient(130deg,#0a1b2b,#06101a);border-radius:4px}
.competence-grid article:nth-child(n){border:1px solid var(--line)}
.competence-grid .field-number{grid-column:1;align-self:center;color:#a9c1d5;font-size:.8rem;letter-spacing:.09em}
.competence-grid .icon{grid-column:2;grid-row:1;width:36px;height:36px;margin:0;justify-self:end}
.competence-grid h3{grid-column:1/-1;min-height:0;font-size:1.5rem;line-height:1.3;margin:22px 0 14px;max-width:440px;letter-spacing:-.02em}
.competence-grid p{grid-column:1/-1;font-size:1rem;line-height:1.65;margin-bottom:22px;max-width:540px}
.service-points{grid-column:1/-1;font-size:1rem;padding-top:20px;margin:0;line-height:1.55}
.service-points li{padding-left:4px;margin-bottom:12px}
.service-points li:last-child{margin-bottom:0}
.software-development{margin-top:28px;padding:32px;gap:48px;border-radius:4px;background:linear-gradient(110deg,#092238,#07131f);border-color:#284a63}
.software-development h3{font-size:1.75rem;line-height:1.25;letter-spacing:-.025em}
.software-development .eyebrow{margin-bottom:15px}
.scope-note{font-size:.95rem;margin-top:28px;max-width:980px}
.engineering .split{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:64px}
.scada-consulting{padding:22px 24px;background:#0b2133;border-left:2px solid var(--blue);margin-block:28px}
.scada-consulting p{margin-bottom:0}
.about .split{grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:64px}
.about-brand{min-height:380px}
.about-brand img{width:280px}
.about-brand p{text-align:center;line-height:1.7}
.contact{padding-block:80px 88px}
.contact>div{max-width:none;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:64px}
.contact .eyebrow{grid-column:1/-1}
.contact h2{grid-column:1;grid-row:2/5;max-width:600px}
.contact>div>.lead{grid-column:2;grid-row:2;color:var(--text)!important}
.contact>div>p:not(.eyebrow):not(.lead){grid-column:2;grid-row:3}
.contact .email{grid-column:2;grid-row:4;justify-self:start;align-items:center;margin-top:8px;font-size:clamp(1.5rem,2.3vw,2rem);border-bottom:2px solid #2588c6;padding-bottom:12px}
.email:hover{color:var(--blue)}
.hero-subline{max-width:545px}
@media(min-width:761px){.hero-art:after{background:linear-gradient(0deg,#02070d 13%,#02070d 27%,transparent 45%,transparent 85%,#02070d55)}}
@media(max-width:960px){
  .section-heading,.engineering .split,.about .split{gap:36px}
  .competence-grid article{padding:26px;gap:0 16px}
  .competence-grid h3{font-size:1.35rem}
  .contact>div{grid-template-columns:1fr;gap:0}
  .contact h2,.contact .eyebrow,.contact>div>.lead,.contact>div>p:not(.eyebrow):not(.lead),.contact .email{grid-column:1;grid-row:auto}
}
@media(max-width:760px){
  .section{padding-block:60px}
  .section-heading,.engineering .split,.about .split{grid-template-columns:1fr;gap:18px}
  .section-heading>p{margin-top:0}
  .competence-grid{grid-template-columns:1fr;gap:16px}
  .competence-grid article{padding:24px}
  .competence-grid h3{font-size:1.35rem;margin-top:20px}
  .software-development{grid-template-columns:1fr;padding:24px;gap:20px}
  .software-development h3{font-size:1.5rem}
  .software-development .eyebrow{font-size:.7rem}
  .scope-note{padding-left:17px;font-size:.95rem}
  .scada-consulting{padding:20px}
  .about-brand{min-height:280px;margin-top:16px}
  .about-brand img{width:220px}
  .about-brand p{font-size:.8rem}
  .contact .email{font-size:1.6rem;gap:24px;max-width:100%}
  .hero .eyebrow{max-width:300px;line-height:1.7}
  .hero-subline{font-size:1.05rem}
  .footer{row-gap:24px}
  .footer a:not(.brand){display:inline-flex;align-items:center;min-height:44px}
}

.contact .phone{grid-column:2;grid-row:5;justify-self:start;display:inline-flex;align-items:center;gap:20px;margin-top:16px;font-size:clamp(1.1rem,2vw,1.6rem);white-space:nowrap}
.contact .phone:hover{color:var(--blue)}
@media(max-width:960px){.contact .phone{grid-column:1;grid-row:auto}}
@media(max-width:400px){.contact .phone{font-size:1rem;gap:12px}}
.build-notice{background:#102334;border-bottom:1px solid #31506b;color:#d6e6f4;font-size:.85rem;line-height:1.6;padding:12px 0}.build-notice strong{color:#fff;margin-right:.4em}

/* Plain-language introduction to OT */
.ot-explained{max-width:860px;margin:0 0 40px}.ot-explained h3{font-size:1.5rem;margin-bottom:16px}


.scope-note h3{margin:0 0 12px;font-size:1.25rem;color:var(--text,#eaf3fa)}.scope-note p{margin:0}


#leistungen > .scada-consulting{margin-top:40px;margin-bottom:40px}

/* Six service shortcuts, with room for the longer labels. */
.disciplines{grid-template-columns:repeat(3,minmax(0,1fr))}
.disciplines a,.disciplines a:first-child{padding:20px 16px;min-height:72px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px}
.disciplines a:nth-child(3n){border-right:0}
.disciplines a:nth-last-child(-n+3){border-bottom:0}
#modernisierung,#eigene-software{scroll-margin-top:110px}
@media(max-width:960px){.disciplines{grid-template-columns:repeat(2,minmax(0,1fr))}.disciplines a:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.disciplines a:nth-child(2n){border-right:0}.disciplines a:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:540px){.disciplines{grid-template-columns:1fr}.disciplines a:nth-child(n){padding:16px 0;min-height:56px;border-right:0;border-bottom:1px solid var(--line)}.disciplines a:last-child{border-bottom:0}.disciplines span{margin-right:0}}

/* Align shortcut numbers and labels on their shared text baseline. */
.disciplines a{align-items:baseline}.disciplines a>span,.disciplines a>b{line-height:inherit}

