@charset "UTF-8";
:root{--bg:#101518;--panel:#191f24;--line:#333c42;--muted:#a7b2ba;--white:#f1f3ef;--blue:#65c4ee;--accent:#f4a900}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--white);font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:6px}img{display:block;max-width:100%}p,h1,h2,h3,figure{margin:0}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#101518f5;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand img,footer img{filter:invert(1);width:210px;height:auto}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a:hover{color:var(--blue)}.nav-cta{border:1px solid #59646b;padding:12px 20px}.nav-cta span{margin-left:28px}.menu{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:10px;z-index:30;background:white;color:black;padding:12px}.hero{padding:36px 5% 0}.hero-top{display:flex;justify-content:space-between;gap:20px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;text-transform:uppercase}.eyebrow>span{display:inline-block;width:7px;height:7px;background:var(--blue);border-radius:50%;margin-right:12px}.preview{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:3px 10px;border-radius:20px}.hero-copy{display:grid;grid-template-columns:1.45fr 1fr;gap:8%;align-items:end;padding:48px 0 54px}h1{font-size:clamp(58px,6.7vw,112px);font-weight:500;letter-spacing:-5px;line-height:.99}em{font-style:normal;color:var(--blue)}.hero-aside{max-width:390px;padding-bottom:7px;font-size:20px}.muted{color:var(--muted);font-size:16px;margin-top:16px}.button{display:inline-flex;gap:52px;align-items:center;background:var(--blue);color:#092333;padding:15px 23px;font-size:14px;font-weight:650;margin-top:28px;transition:background .2s,transform .2s}.button:hover{background:#b4e8ff;transform:translateY(-2px)}.hero-image{position:relative;background:#303946;overflow:hidden;border:1px solid #46505b}.hero-image>img{width:100%;height:580px;object-fit:cover;object-position:center 44%}.hero-image figcaption{position:absolute;bottom:0;left:0;width:100%;padding:24px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(transparent,#101518e6);font-size:12px}.hero-image figcaption>span:first-child{font-size:10px;letter-spacing:2px}.hero-image figcaption a{font-size:24px}.specialties{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:28px 0}.specialties>span{font-size:10px;color:var(--muted);letter-spacing:2px;align-self:center}.specialties p{font-size:15px}.section{padding:110px 5%}.section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:8%;row-gap:22px;align-items:end;margin-bottom:50px}.section-heading .eyebrow{grid-column:1/-1;color:var(--blue)}h2{font-size:clamp(36px,3.55vw,60px);font-weight:450;line-height:1.15;letter-spacing:-2px}h2 span{color:var(--muted)}.intro{color:var(--muted);max-width:480px}.services{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:35px;cursor:pointer;padding:26px 8px}summary::-webkit-details-marker{display:none}.num{font-size:12px;color:var(--muted);width:34px}summary h3{font-size:25px;font-weight:450;letter-spacing:-.5px}.plus{margin-left:auto;font-size:26px;color:var(--blue)}details[open] .plus{transform:rotate(45deg)}details[open]{background:#172027}.service-body{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:0 40px 30px 78px;color:var(--muted)}.service-body ul{margin:0;padding-left:20px}.service-body li{padding:2px 0}.projects{background:#e9ece9;color:#152027}.projects .eyebrow{color:#476a7b}.projects h2 span,.projects .intro{color:#5e6b73}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.filters button{background:transparent;color:#526169;border:1px solid #bbc6ca;border-radius:30px;padding:10px 20px;font-size:13px}.filters button.active{background:#152027;color:white;border-color:#152027}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 26px}.project{padding:0;background:none;border:0;text-align:left;min-width:0}.project[hidden]{display:none}.project-image{overflow:hidden;position:relative;background:#303947;height:360px}.project-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.project-image.light{background:#fff}.project:hover img{transform:scale(1.035)}.project-image>span{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eef2efe8;color:#142128;font-size:20px}.project-caption{display:flex;gap:10px;justify-content:space-between;padding-top:17px}.project-caption small{font-size:10px;letter-spacing:1.4px;color:#5b6a73}.project-caption h3{font-size:20px;letter-spacing:-.4px;font-weight:550;margin-top:4px}.project-caption>span{font-size:11px;color:#52616a;align-self:end;text-align:right}.gallery-note{display:flex;justify-content:space-between;color:#5e6b73;font-size:12px;margin-top:30px}.statement{padding:105px 10%;background:#172832;border-bottom:1px solid #385160}.statement .eyebrow{color:var(--blue);margin-bottom:28px}.statement h2{font-size:clamp(38px,5.2vw,80px)}.statement>div{margin:35px 0 0 auto;max-width:540px;color:#b7c5cc}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid #557382;padding:22px 0 12px;color:var(--white)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.steps article{border-top:1px solid #53616a;padding-top:24px}.steps article>span{font-size:12px;color:var(--blue)}.steps h3{font-size:21px;font-weight:500;margin:25px 0 13px}.steps p{font-size:14px;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line)}.about .eyebrow{color:var(--blue);margin-bottom:28px}.about>div>p:not(.eyebrow){color:var(--muted);margin-bottom:22px}.about>div>.about-lead{font-size:25px;color:var(--white)}.toolbox{border-top:1px solid var(--line);margin-top:36px;padding-top:24px}.toolbox>span{font-size:10px;letter-spacing:2px;color:var(--blue)}.toolbox p{font-size:13px;margin-top:12px;color:var(--muted)}.contact{padding:90px 5%;display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#dce7eb;color:#112733}.contact .eyebrow{color:#42687b;margin-bottom:28px}.contact h2{font-size:clamp(45px,5.5vw,85px)}.contact h2 em{color:#0078aa}.contact>div>p:not(.eyebrow){margin-top:24px;color:#4b6471}.contact .button{background:#102d3c;color:white}.contact .button:hover{background:#24526a}.contact-details{align-self:end}.contact-details>a{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #a2b7c2;padding:20px 0;font-size:29px;letter-spacing:-.7px}.contact-details>a.email{font-size:22px}.contact-details>div{display:grid;grid-template-columns:1fr 1.3fr;gap:20px;margin-top:40px;font-size:12px;color:#4b6471}.contact-details>div>p:first-child{font-weight:650;color:#163340}footer{padding:38px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;font-size:11px;color:var(--muted)}footer img{width:150px}dialog{width:min(1120px,94vw);max-height:94vh;padding:0;border:1px solid #53616a;background:#141d23;color:var(--white)}dialog::backdrop{background:#050a10dd;backdrop-filter:blur(6px)}dialog>img{width:100%;height:65vh;object-fit:contain;background:#303947}dialog>div{padding:22px 30px}dialog h2{font-size:28px;margin:9px 0}dialog p:last-child{color:var(--muted);font-size:14px}.close{position:absolute;right:14px;top:14px;background:#101518e8;border:1px solid #65747d;padding:8px 14px;z-index:1;font-size:12px}body.modal-open{overflow:hidden}
@media(min-width:1650px){main,header,footer{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:18px}.hero-copy{gap:4%}h1{letter-spacing:-3px}.hero-image>img{height:430px}.project-image{height:280px}.project-caption{display:block}.project-caption>span{display:block;text-align:left;margin-top:8px}.steps{gap:20px}.contact-details>a{font-size:23px}.contact-details>a.email{font-size:18px}}
@media(max-width:760px){html{scroll-padding-top:85px}header{height:80px}.brand img{width:170px}.menu{display:block;background:none;border:1px solid var(--line);padding:8px 12px;font-size:13px}nav{display:none;position:absolute;top:79px;left:0;right:0;background:#101518;padding:25px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{padding-top:24px}.hero-top{align-items:start}.hero-top .eyebrow{font-size:9px;letter-spacing:1.3px;max-width:220px}.preview{font-size:9px;white-space:nowrap}.hero-copy{grid-template-columns:1fr;padding:35px 0;gap:28px}h1{font-size:64px;letter-spacing:-3px}.hero-aside{font-size:18px;max-width:100%}.muted{font-size:15px;max-width:430px}.hero-image>img{height:310px;object-fit:contain}.hero-image figcaption{padding:15px;font-size:10px}.hero-image figcaption>span:first-child{display:none}.specialties{flex-wrap:wrap;gap:9px 22px;padding:22px 0}.specialties>span{width:100%}.specialties p{font-size:12px}.section{padding:65px 5%}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:32px}h2{font-size:39px;letter-spacing:-1.7px}.intro{font-size:15px}summary{padding:23px 6px;gap:12px}summary h3{font-size:20px}.num{width:22px;font-size:10px}.service-body{grid-template-columns:1fr;padding:0 20px 25px 40px;gap:15px;font-size:14px}.filters{gap:8px}.filters button{font-size:11px;padding:8px 13px}.project-grid{grid-template-columns:1fr;gap:30px}.project-image{height:300px}.project-caption h3{font-size:19px}.gallery-note{gap:18px;font-size:11px}.gallery-note span{white-space:nowrap}.statement{padding:65px 5%}.statement h2{font-size:40px}.statement>div{font-size:15px}.steps{grid-template-columns:1fr 1fr;gap:30px 22px}.steps h3{font-size:19px;margin-top:18px}.about{grid-template-columns:1fr;gap:32px}.about>div>.about-lead{font-size:22px}.contact{grid-template-columns:1fr;gap:40px;padding:65px 5%}.contact h2{font-size:52px}.contact-details>a{font-size:25px}.contact-details>a.email{font-size:20px}.contact-details>div{font-size:11px;gap:12px}footer{flex-wrap:wrap;padding:28px 5%;gap:20px}footer>span{order:3;width:100%;font-size:10px}dialog>img{height:48vh}dialog>div{padding:20px}dialog h2{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* General service areas replace client-project gallery. */
.fields-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 38px}.fields-grid article{border-top:1px solid #aebfc5;padding:30px 0 36px}.field-number{font-size:10px;letter-spacing:1.7px;color:#40697b}.fields-grid h3{font-size:26px;font-weight:500;line-height:1.2;letter-spacing:-.7px;margin:22px 0 18px;max-width:290px}.fields-grid p{font-size:14px;color:#52636c}.field-tags{margin-top:25px;font-size:10px;letter-spacing:.4px;color:#42677a}.fields-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:27px;border-top:1px solid #aebfc5;font-size:14px}.fields-bottom a{font-weight:600}.hero-image>img{height:auto;max-height:730px;object-fit:contain}.hero-image{background:#101518}.toolbox p{max-width:510px}@media(max-width:1000px){.fields-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.fields-grid{grid-template-columns:1fr}.fields-grid article{padding:26px 0}.fields-grid h3{max-width:none;font-size:25px;margin:15px 0}.fields-bottom{flex-direction:column}.hero-image>img{height:auto}.hero-image figcaption{position:relative;background:#101518}.hero-image figcaption>span:nth-child(2){font-size:9px}}

.fields-grid{gap:34px 28px}.fields-grid article{border-top:0;padding-top:0}.field-art{margin:0 0 23px;background:#101518;aspect-ratio:3/2;overflow:hidden}.field-art img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.fields-grid article:hover .field-art img{transform:scale(1.025)}.concept-note{font-size:11px;color:#64747c;margin:0 0 24px}@media(max-width:760px){.fields-grid{gap:15px}.fields-grid article{padding-top:0}.field-art{margin-bottom:19px}}

.service-body{grid-template-columns:200px minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}.service-art{width:200px;aspect-ratio:3/2;overflow:hidden;background:#101518;border:1px solid #34434c}.service-art img{width:100%;height:100%;object-fit:contain}@media(max-width:1100px){.service-body{grid-template-columns:160px minmax(0,1fr);gap:18px 25px}.service-art{width:160px;grid-row:span 2;align-self:start}.service-body ul{grid-column:2}}@media(max-width:760px){.service-body{grid-template-columns:1fr;padding-left:40px;gap:17px}.service-art{width:180px;grid-row:auto}.service-body ul{grid-column:1}}

header{gap:22px}header .brand{flex-shrink:0}header nav{margin-left:auto;gap:22px}.language-switch{display:flex;flex-shrink:0;border:1px solid #44525a;border-radius:4px;padding:3px;gap:2px}.language-switch a{font-size:11px;line-height:1;padding:10px 9px;color:#a7b2ba}.language-switch a[aria-current="page"]{background:#65c4ee;color:#102d3c;font-weight:700}.language-switch a:hover{color:#fff}.language-switch a[aria-current="page"]:hover{color:#102d3c}.steps article,.section-heading>*,.hero-copy>*,.contact>*,.about>*{min-width:0}html[lang="en"] h1{font-size:clamp(56px,6vw,100px)}html[lang="en"] .contact h2{font-size:clamp(40px,4.8vw,74px)}
@media(min-width:761px) and (max-width:1150px){header{height:90px}.brand img{width:185px}.menu{display:block;background:none;border:1px solid var(--line);padding:9px 13px;font-size:13px}header .language-switch{margin-left:auto}header nav{display:none;position:absolute;top:89px;left:0;right:0;background:#101518;padding:25px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;margin-left:0}header nav.open{display:flex}.hero-copy{grid-template-columns:1.25fr 1fr}h1{font-size:clamp(56px,7vw,76px)}.contact-details>a.email{font-size:clamp(15px,2vw,21px)}}
@media(max-width:760px){header{gap:10px}.brand img{width:clamp(112px,32vw,150px)}header .language-switch{margin-left:auto}.language-switch a{padding:9px 7px;font-size:10px}.menu{padding:8px 9px;font-size:11px}header nav{margin-left:0}html[lang="en"] h1{font-size:clamp(48px,13vw,64px)}html[lang="en"] .contact h2{font-size:45px}h1{font-size:clamp(48px,16vw,64px)}.contact-details>a.email{font-size:clamp(16px,5vw,20px)}.hero-top .eyebrow{max-width:200px}.steps h3{overflow-wrap:anywhere}.hero-image figcaption>span:first-child{display:block;font-size:9px}.hero-image figcaption>span:nth-child(2){display:none}}
@media(max-width:760px){html[lang="pl"] .contact h2{font-size:clamp(38px,11vw,52px)}}

/* Quiet motion: no new media, no perpetual animation, native static fallbacks. */
:root{--motion-ease:cubic-bezier(.2,.7,.2,1)}
.services details.is-animating{overflow:hidden;overflow:clip}
.services details{transition:background-color .22s ease}
.services .plus{transition:transform .24s var(--motion-ease)}
.services details.is-closing .plus{transform:rotate(0)}
.button span,.nav-cta span,.text-link span,.contact-details>a>span{display:inline-block;transition:transform .22s var(--motion-ease)}
.nav-cta,.service-art{transition:border-color .25s ease}
.field-art{outline:1px solid transparent;outline-offset:-1px;transition:outline-color .25s ease}
@media(hover:hover) and (pointer:fine){
  .button:hover span,.button:focus-visible span,.text-link:hover span,.contact-details>a:hover>span{transform:translate(2px,-2px)}
  .hero .button:hover span{transform:translate(2px,2px)}
  .nav-cta:hover{border-color:var(--blue)}
  .nav-cta:hover span{transform:translate(2px,-2px)}
  .fields-grid article:hover .field-art{outline-color:#65c4ee66}
  .services details:hover .service-art{border-color:#65c4ee66}
  .field-art img{transition:transform .6s var(--motion-ease)}
}
@media(hover:none){.fields-grid article:hover .field-art img{transform:none}.button:hover{transform:none}}
.steps article{position:relative}
.steps article::before{content:"";position:absolute;left:0;right:-32px;top:-1px;height:1px;background:#65c4ee88;transform:scaleX(1);transform-origin:left}
.steps article:last-child::before{right:0}
@media(prefers-reduced-motion:no-preference){
  .steps article::before{transform:scaleX(0);transition:transform .65s var(--motion-ease)}
  .steps article.is-traced::before{transform:scaleX(1)}
  .steps article:nth-child(2)::before{transition-delay:70ms}
  .steps article:nth-child(3)::before{transition-delay:140ms}
  .steps article:nth-child(4)::before{transition-delay:210ms}
}
.hero-image{isolation:isolate}
.hero-image::after{content:"";pointer-events:none;position:absolute;inset:0 auto 0 0;width:40%;background:linear-gradient(100deg,transparent 18%,#65c4ee10 40%,#a7e7ff35 51%,#65c4ee0b 64%,transparent 85%);opacity:0;transform:translateX(-200%) skewX(-12deg)}
.hero-image figcaption{z-index:1}
@media(prefers-reduced-motion:no-preference){.hero-image.hero-glint::after{animation:moja-glint 2.2s var(--motion-ease) .15s 1}}
@keyframes moja-glint{0%{transform:translateX(-200%) skewX(-12deg);opacity:0}18%{opacity:.65}75%{opacity:.65}100%{transform:translateX(350%) skewX(-12deg);opacity:0}}
@media(max-width:1000px){.steps article::before{right:-20px}}
@media(max-width:760px){
  .steps article::before{right:-22px;transition-duration:.4s;transition-delay:0s!important}
  .steps article:nth-child(2n)::before{right:0}
  .hero-image.hero-glint::after{animation-duration:1.6s}
  .hero-image::after{background:linear-gradient(100deg,transparent 20%,#65c4ee08 40%,#a7e7ff20 51%,transparent 80%)}
  .services .plus{transition-duration:.18s}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .steps article::before{transform:scaleX(1)}
  .button:hover,.field-art img,.fields-grid article:hover .field-art img{transform:none!important}
}
@media print{.hero-image::after{display:none}.services details{height:auto!important;overflow:visible!important}}
.motion-reduced *,.motion-reduced *::before,.motion-reduced *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.motion-reduced .steps article::before{transform:scaleX(1)}
.motion-reduced .button:hover,.motion-reduced .fields-grid article:hover .field-art img{transform:none!important}
