:root{--ink:#111418;--paper:#f4f5f3;--muted:#737a80;--line:#d7dbd8;--accent:#6ee7b7;--dark:#11161a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.site-header{height:92px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,245,243,.94);backdrop-filter:blur(12px);z-index:20}.brand{color:inherit;text-decoration:none;display:flex;flex-direction:column}.brand span{font-weight:800;font-size:23px;letter-spacing:.08em}.brand small{font-size:10px;color:var(--muted);letter-spacing:.06em;margin-top:3px}.site-header nav{display:flex;gap:26px}.site-header nav a,.text-link{color:inherit;text-decoration:none;font-size:13px}.menu{display:none;background:none;border:0}.hero{min-height:calc(100vh - 92px);display:flex;align-items:center;padding:6vw 5vw}.hero-grid{width:100%;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw}.eyebrow,.section-no{font-size:11px;letter-spacing:.18em;color:var(--muted);font-weight:700}.hero h1{font-size:clamp(72px,11vw,170px);line-height:.78;letter-spacing:-.07em;margin:35px 0 28px}.payoff{font-size:clamp(28px,4vw,58px);letter-spacing:-.045em;margin:0}.lead{font-size:20px;line-height:1.55;max-width:570px;color:#4f565b;margin:36px 0}.actions{display:flex;gap:30px;align-items:center}.button{background:var(--ink);color:white;padding:17px 23px;text-decoration:none;font-size:13px}.visual{height:520px;position:relative;border:1px solid var(--line);overflow:hidden;background:#e9ece9}.grid-lines{position:absolute;inset:0;background-image:linear-gradient(#cdd2cf 1px,transparent 1px),linear-gradient(90deg,#cdd2cf 1px,transparent 1px);background-size:48px 48px;opacity:.55}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.o1{width:330px;height:330px;background:#151b20;left:16%;top:15%}.o2{width:250px;height:250px;background:var(--accent);right:5%;bottom:4%;mix-blend-mode:multiply}.node{position:absolute;background:var(--paper);border:1px solid #adb5b1;padding:9px 12px;font-size:10px;letter-spacing:.12em}.n1{left:8%;top:15%}.n2{right:8%;top:25%}.n3{left:14%;bottom:10%}.n4{right:12%;bottom:18%}.intro,.feature,.projects,.about,.contact{padding:120px 5vw}.intro{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:5vw;border-top:1px solid var(--line)}h2{font-size:clamp(42px,5.4vw,82px);line-height:.98;letter-spacing:-.055em;margin:0}.intro>p:last-child,.feature-grid p,.about>p{font-size:18px;line-height:1.65;color:#555e63}.dark{background:var(--dark);color:white;padding:120px 5vw}.dark .section-no{color:#8d979d}.section-head{display:grid;grid-template-columns:1fr 2fr;margin-bottom:80px}.cards{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #3a4247}.cards article{padding:30px 25px 50px 0;border-right:1px solid #3a4247;min-height:270px}.cards article+article{padding-left:25px}.cards b{font-size:11px;color:var(--accent)}.cards h3{font-size:25px;margin:24px 0 18px}.card-image{display:block;width:100%;height:190px;object-fit:cover;object-position:center;margin:28px 0 0;border:0}.cards p{font-size:14px;line-height:1.6;color:#aeb7bc}.feature-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:10vw;align-items:end;margin-top:70px}.feature h2 em,.about h2 em{font-style:normal;color:#87918c}.flow{margin-top:100px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.12em}.flow i{font-style:normal;color:#9ba29f}.split{display:grid;grid-template-columns:1fr 1fr;background:#dfe4e0;padding:120px 5vw;gap:8vw}.bigline{font-size:24px;max-width:520px;margin-top:55px}.diagram{display:flex;flex-direction:column;justify-content:center}.diagram span{font-size:18px;border-bottom:1px solid #adb5b1;padding:22px 0}.diagram span:before{content:'→';margin-right:25px;color:#77817c}.projects h2{margin:55px 0 80px}.project-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.project-list span{font-size:20px;padding:25px 0;border-bottom:1px solid var(--line)}.project-list span:nth-child(odd){border-right:1px solid var(--line)}.project-list span:nth-child(even){padding-left:30px}.about{background:#171c20;color:white}.about h2{margin:60px 0;max-width:1000px}.about>p{max-width:650px;color:#aeb7bc}.contact h2{margin:55px 0}.mail{display:inline-block;font-size:clamp(26px,4vw,56px);color:inherit;text-decoration:none;border-bottom:2px solid var(--ink);padding-bottom:8px}footer{background:#0d1114;color:#b8c0c4;padding:55px 5vw;display:flex;justify-content:space-between;font-size:12px;line-height:1.8}footer strong{color:white;font-size:16px}footer a{color:#b8c0c4;margin-right:20px}.text-link{border-bottom:1px solid currentColor;padding-bottom:4px}@media(max-width:900px){.site-header nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--paper);padding:30px 5vw;flex-direction:column;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.menu{display:block}.hero-grid,.intro,.section-head,.feature-grid,.split{grid-template-columns:1fr}.visual{height:380px}.cards{grid-template-columns:1fr}.cards article,.cards article+article{padding:28px 0;min-height:0;border-right:0;border-bottom:1px solid #3a4247}.cards h3{margin:16px 0 10px}.card-image{height:220px;margin-top:20px}.flow{overflow:auto;gap:25px;justify-content:flex-start}.project-list{grid-template-columns:1fr}.project-list span:nth-child(odd){border-right:0}.project-list span:nth-child(even){padding-left:0}footer{flex-direction:column;gap:25px}}@media(max-width:560px){.site-header{height:76px}.hero{min-height:auto;padding-top:90px;padding-bottom:80px}.hero h1{font-size:68px}.payoff{font-size:31px}.lead{font-size:17px}.actions{align-items:flex-start;flex-direction:column}.visual{height:300px}.intro,.feature,.projects,.about,.contact,.dark,.split{padding:80px 6vw}h2{font-size:45px}.project-list span{font-size:17px}.site-header nav{top:76px}}
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:10vw;align-items:start}.about-grid h2{margin:60px 0}.about-grid>div>p:not(.section-no){max-width:650px;font-size:18px;line-height:1.65;color:#aeb7bc}.references{padding-top:60px}.references .section-no{margin:0 0 22px}.references a{display:block;color:white;text-decoration:none;border-top:1px solid #3a4247;padding:22px 0}.references a:last-child{border-bottom:1px solid #3a4247}.references strong{display:flex;justify-content:space-between;font-size:18px;letter-spacing:.01em}.references small{display:block;color:#aeb7bc;font-size:14px;line-height:1.55;margin:10px 0 7px}.references em{font-style:normal;color:#87918c;font-size:12px}@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:20px}.references{padding-top:20px}}
/* Release 3 - nature backgrounds */
.intro,.feature{position:relative;isolation:isolate;background-color:var(--paper);overflow:hidden}
.intro::before,.feature::before{content:"";position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;opacity:.50}
.intro::before{background-image:url('../img/bg-sudapi.webp')}
.feature::before{background-image:url('../img/bg-digital-twin.webp')}
.intro::after,.feature::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(244,245,243,.16)}

/* Release 4 - legal footer, cookie notice and privacy page */
footer p{margin:4px 0}
.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:100;background:#11161a;color:#fff;border:1px solid #394148;box-shadow:0 16px 48px rgba(0,0,0,.28);padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.cookie-banner[hidden]{display:none}.cookie-copy{max-width:860px}.cookie-copy strong{font-size:15px;letter-spacing:.03em}.cookie-copy p{margin:7px 0 0;color:#c7ced2;font-size:13px;line-height:1.5}.cookie-actions{display:flex;align-items:center;gap:18px;flex:0 0 auto}.cookie-actions a{color:#fff;font-size:12px}.cookie-actions button{border:0;background:var(--accent);color:#101418;font-weight:700;padding:12px 20px;cursor:pointer}
.privacy-main{max-width:1180px;margin:0 auto;padding:90px 5vw 120px}.privacy-main .section-no{margin-bottom:24px}.privacy-main h1{font-size:clamp(50px,7vw,100px);letter-spacing:-.06em;line-height:.92;margin:0 0 30px}.privacy-main .privacy-lead{font-size:20px;line-height:1.6;max-width:800px;color:#4f565b;margin-bottom:60px}.privacy-grid{display:grid;grid-template-columns:260px 1fr;gap:70px}.privacy-nav{position:sticky;top:120px;align-self:start;border-top:1px solid var(--line)}.privacy-nav a{display:block;color:inherit;text-decoration:none;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.privacy-content section{scroll-margin-top:120px;border-top:1px solid var(--line);padding:34px 0}.privacy-content h2{font-size:28px;letter-spacing:-.02em;margin:0 0 18px}.privacy-content h3{font-size:18px;margin:28px 0 10px}.privacy-content p,.privacy-content li{font-size:15px;line-height:1.75;color:#4f565b}.privacy-content ul,.privacy-content ol{padding-left:22px}.privacy-content a{color:inherit}.privacy-meta{display:flex;gap:24px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:20px}@media(max-width:900px){.cookie-banner{left:12px;right:12px;bottom:12px;align-items:flex-start;flex-direction:column;gap:16px}.cookie-actions{width:100%;justify-content:space-between}.privacy-grid{grid-template-columns:1fr}.privacy-nav{position:static}.privacy-main{padding-top:70px}}
