@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}

:root{--ink:#091522;--ink-2:#12263a;--blue:#0066c7;--signal:#58b7ff;--ice:#eaf4ff;--fog:#f3f6f8;--white:#fff;--muted:#596879;--line:#d8e0e8;--warm:#f59b45;--max:1240px;--radius:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Inter,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:var(--blue);text-underline-offset:4px}
button,input,select,textarea{font:inherit}
button{color:inherit}
[hidden]{display:none!important}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:600;letter-spacing:-.045em;line-height:1.06}
h2{font-size:clamp(34px,4vw,58px)}
h3{font-size:clamp(24px,2.3vw,34px)}
p+p{margin-top:16px}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--signal);outline-offset:4px}
.page-width{width:min(100%,var(--max));margin-inline:auto;padding-inline:32px}
.section{padding-block:112px}
.skip{position:fixed;z-index:200;left:16px;top:-100px;padding:12px 18px;background:var(--ink);color:#fff}.skip:focus{top:12px}

.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(216,224,232,.82);backdrop-filter:blur(16px)}
.nav__inner{height:76px;width:min(100%,var(--max));margin:auto;padding-inline:32px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:inline-flex;flex-shrink:0}.brand__mark{width:176px}
.nav__links{display:flex;align-items:center;gap:28px}.nav__links>a{color:var(--ink);font-size:14px;font-weight:500;text-decoration:none}.nav__links>a:hover{color:var(--blue)}
.nav__toggle,.nav__mobile{display:none}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 22px;border:1px solid transparent;border-radius:9px;font-size:15px;font-weight:600;line-height:1.25;text-align:center;text-decoration:none;cursor:pointer}
.btn--primary{background:var(--blue);color:#fff}.btn--primary:hover{background:#0057aa}.btn--sm{min-height:42px;padding:10px 17px;font-size:14px}.btn--light{background:#fff;color:var(--ink);border-color:#fff}.btn--light:hover{background:var(--ice)}
.text-link{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:#9db3c8;text-decoration-thickness:1px;text-underline-offset:6px}.text-link:hover{color:var(--blue);text-decoration-color:currentColor}

.hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(600px,1.08fr);gap:54px;align-items:center;padding-top:64px;padding-bottom:82px}
.hero__copy{max-width:550px}
.hero__context{margin-bottom:23px;color:var(--blue);font-size:15px;font-weight:600}
.hero h1{max-width:590px;font-size:clamp(43px,4.4vw,62px);letter-spacing:-.055em}
.hero__lead{max-width:570px;margin-top:28px;color:var(--muted);font-size:20px;line-height:1.55}
.hero__actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}
.hero__note{max-width:520px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.55}

.architecture{overflow:hidden;background:var(--ink);color:#fff;border-radius:26px;box-shadow:0 30px 70px rgba(9,21,34,.2)}
.architecture__head{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;padding:27px 28px 22px;border-bottom:1px solid rgba(255,255,255,.12)}
.architecture__head p{color:#9eb1c3;font-size:12px;margin-bottom:5px}.architecture__head h2{font-size:22px;letter-spacing:-.025em}
.architecture__live{display:flex;align-items:center;gap:8px;flex-shrink:0;color:#b9c9d7;font-size:11px}.architecture__live i{width:8px;height:8px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 5px rgba(88,183,255,.12)}
.architecture__controls{display:grid;grid-template-columns:.68fr 1.36fr 1.45fr;gap:10px;padding:18px 20px;background:#0d1b2a}
.architecture__controls fieldset{min-width:0;margin:0;padding:0;border:0}.architecture__controls legend{width:100%;margin-bottom:7px;color:#7f94a8;font-size:10px}
.architecture__controls button{min-height:31px;padding:5px 9px;border:1px solid rgba(255,255,255,.13);background:transparent;color:#b6c7d6;font-size:10px;line-height:1.2;cursor:pointer}.architecture__controls button:first-of-type{border-radius:6px 0 0 6px}.architecture__controls button:last-of-type{border-radius:0 6px 6px 0}.architecture__controls button+button{margin-left:-1px}.architecture__controls button[aria-pressed="true"]{position:relative;z-index:1;background:var(--ice);border-color:var(--ice);color:var(--ink);font-weight:600}
.architecture__stage{position:relative;height:315px;margin:0 20px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:radial-gradient(circle at 35% 25%,rgba(88,183,255,.08),transparent 30%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,24px 24px,24px 24px}
.architecture__stage svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.architecture__stage path{fill:none;stroke:rgba(88,183,255,.58);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:5 8;animation:data-flow 5s linear infinite}.architecture__stage path:nth-child(2){animation-delay:-1.2s}.architecture__stage path:nth-child(3){animation-delay:-2.4s}.architecture__stage .architecture__return{stroke:rgba(245,155,69,.5);animation-direction:reverse}
.architecture__stage.is-changing path{stroke:#fff;animation-duration:1.1s}
.system-node{position:absolute;z-index:2;width:156px;min-height:82px;padding:13px 14px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:#13283d;box-shadow:0 12px 28px rgba(0,0,0,.19)}
.system-node:before{content:"";position:absolute;top:16px;left:-5px;width:8px;height:8px;border:2px solid var(--ink);border-radius:50%;background:var(--signal)}
.system-node span,.architecture__human span{display:block;margin-bottom:4px;color:#84a0b8;font-size:9px}.system-node strong{display:block;font-size:12px;line-height:1.35;letter-spacing:-.01em}.system-node small{display:block;margin-top:5px;color:#9eb1c3;font-size:8px;line-height:1.4}
.system-node--source{left:4%;top:104px}.system-node--logic{left:39%;top:41px;border-color:rgba(88,183,255,.55)}.system-node--model{right:3%;top:104px}.system-node--result{right:3%;bottom:18px;border-color:rgba(245,155,69,.65)}
.architecture__human{position:absolute;z-index:2;left:38%;bottom:16px;width:190px;color:#aec0cf;font-size:9px;line-height:1.5}.architecture__human strong{color:#fff;font-size:10px}
.architecture__summary{min-height:79px;padding:20px 28px 24px;color:#b9c9d7;font-size:12px;line-height:1.55}
@keyframes data-flow{to{stroke-dashoffset:-52}}

.proof{padding-bottom:116px}
.proof__heading{display:grid;grid-template-columns:1.05fr .75fr;gap:70px;align-items:end;margin-bottom:34px}.proof__heading h2{font-size:clamp(34px,3.8vw,54px)}.proof__heading p{max-width:480px;color:var(--muted);font-size:18px}
.proof__grid{display:grid;grid-template-columns:1.12fr .88fr;gap:22px;align-items:stretch}
.proof-card{overflow:hidden;display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--fog);color:var(--ink);text-decoration:none}.proof-card--dark{background:var(--ink);border-color:var(--ink);color:#fff}
.proof-card__visual{overflow:hidden;height:255px;background:#dfe9f4}.proof-card__visual--teams{padding:30px 30px 0;background:linear-gradient(145deg,#e8f0ff,#d7e5fb)}.proof-card__visual img{width:100%;height:100%;object-fit:cover;object-position:top left}.proof-card__visual--teams img{border-radius:9px 9px 0 0;box-shadow:0 15px 40px rgba(39,61,89,.2)}
.proof-card__content{display:flex;flex:1;flex-direction:column;padding:25px 27px 27px}.proof-card__content p{color:var(--muted);font-size:12px}.proof-card--dark .proof-card__content p{color:#9fb1c1}.proof-card__content h3{margin-top:12px;font-size:clamp(22px,2vw,29px);line-height:1.2}.proof-card__content span{display:block;margin-top:auto;padding-top:24px;color:var(--blue);font-size:14px;font-weight:600}.proof-card--dark .proof-card__content span{color:var(--signal)}

.decision-section{background:var(--fog)}
.section-intro{max-width:770px;margin-bottom:58px}.section-intro--wide{max-width:940px}.section-kicker{margin-bottom:20px;color:var(--blue);font-size:14px;font-weight:600}.section-intro>p:last-child{max-width:660px;margin-top:23px;color:var(--muted);font-size:18px}
.decision-list{border-top:1px solid #cbd6df}.decision-list article{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;padding:43px 0;border-bottom:1px solid #cbd6df}.decision-question>p{margin-bottom:14px;color:var(--blue);font-size:15px;font-weight:600}.decision-question h3{max-width:480px;font-size:clamp(27px,3vw,41px);line-height:1.13}.decision-answer>p{max-width:620px;color:var(--muted);font-size:17px}.decision-answer ul{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0;padding:0;list-style:none}.decision-answer li{padding:6px 10px;border:1px solid #c9d7e3;border-radius:6px;background:#fff;color:#405267;font-size:12px}.decision-answer>a{display:inline-block;margin-top:3px;font-weight:600}
.technical-details{margin-top:28px;border-top:1px solid var(--line)}.technical-details summary{min-height:54px;padding:16px 0;cursor:pointer;font-weight:600}.technical-details summary::marker{color:var(--blue)}.technical-details>div{padding:4px 0 23px;color:var(--muted);font-size:15px}.technical-details>div p{max-width:800px}.legal-context{margin-top:44px}

.work>.section-intro{margin-bottom:54px}
.case{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:32px 72px;margin-bottom:28px;padding:54px;border:1px solid var(--line);border-radius:24px;background:#fff}
.case__title>p{margin-bottom:17px;color:var(--blue);font-size:14px;font-weight:600}.case__title h3{font-size:clamp(31px,3.3vw,48px);line-height:1.1}.case__title>span{display:block;margin-top:22px;color:var(--muted);font-size:13px}
.case__lead{font-size:20px;line-height:1.55}.case__story dl{margin:26px 0 0}.case__story dl>div{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:12px 0;border-top:1px solid var(--line);font-size:14px}.case__story dt{color:var(--muted)}.case__story dd{margin:0}
.case__media{grid-column:1/-1;margin:5px 0 0}.case__media--double{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.dashboard__shot{min-width:0;margin:0}.dashboard__shot img{width:100%;border-radius:10px;cursor:zoom-in}.dashboard__shot figcaption{margin-top:12px;color:var(--muted);font-size:13px;line-height:1.55}.dashboard__shot figcaption strong{color:inherit}
.case__technical{grid-column:1/-1;margin-top:0}
.case--ink{background:var(--ink);border-color:var(--ink);color:#fff}.case--ink .case__title>p{color:var(--signal)}.case--ink .case__title>span,.case--ink .dashboard__shot figcaption,.case--ink .technical-details>div{color:#a9bccb}.case--ink .technical-details{border-color:rgba(255,255,255,.18)}.case--ink .technical-details summary::marker{color:var(--signal)}
.case__numbers{display:flex;gap:55px;margin-top:34px;padding-block:22px;border-top:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17)}.case__numbers p{margin:0}.case__numbers strong{display:block;font-size:58px;font-weight:500;line-height:1;letter-spacing:-.06em}.case__numbers span{display:block;margin-top:8px;color:#a9bccb;font-size:12px}

.collaboration-section{background:var(--blue);color:#fff}.collaboration-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:95px}.collaboration__intro>.section-kicker{color:#cce7ff}.collaboration__intro>p:not(.section-kicker){max-width:530px;margin-top:24px;color:#d9ebfb;font-size:18px}.collaboration__intro h2{font-size:clamp(38px,4.5vw,62px)}
.analysis-offer{margin-top:42px;padding:28px;border-radius:16px;background:rgba(9,21,34,.22)}.analysis-offer>p:first-child{margin:0}.analysis-offer strong{display:block;font-size:54px;font-weight:500;line-height:1;letter-spacing:-.06em}.analysis-offer span{font-size:12px;color:#d9ebfb}.analysis-offer>p:nth-child(2){margin-top:18px;color:#e9f5ff;font-size:14px}.analysis-offer .btn{margin-top:22px}
.journey{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.3)}.journey li{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:27px 0;border-bottom:1px solid rgba(255,255,255,.3)}.journey li>span{padding-top:4px;color:#cce7ff;font-size:13px}.journey h3{font-size:25px;letter-spacing:-.025em}.journey p{max-width:520px;margin-top:10px;color:#d9ebfb;font-size:15px}

.section--contact{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:82px;align-items:start}.contact__intro>p:not(.section-kicker,.contact__assurance){max-width:560px;margin-top:24px;color:var(--muted);font-size:18px}.contact__intro h2{font-size:clamp(38px,4.6vw,62px)}
.contact-team{margin-top:38px;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-team>p{color:var(--blue);font-size:12px;font-weight:600}.contact-team h3{max-width:520px;margin-top:7px;font-size:25px;letter-spacing:-.025em}.contact-team>span{display:block;max-width:520px;margin:13px 0 17px;color:var(--muted);font-size:14px}.contact-team a{display:block;width:fit-content;min-height:35px;font-size:14px;text-decoration:none}.contact-team a:hover{text-decoration:underline}.contact__assurance{margin-top:25px;color:var(--muted);font-size:13px}
.form{min-width:0;padding:34px;border-radius:18px;background:var(--fog)}.form__head{margin-bottom:28px}.form__head>span{color:var(--blue);font-size:12px;font-weight:600}.form__head h3{margin-top:7px;font-size:29px}.form__head p{margin-top:10px;color:var(--muted);font-size:14px}.form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:block;margin-bottom:17px}.field>span{display:block;margin-bottom:7px;font-size:13px;font-weight:600}.field small{margin-left:5px;color:var(--muted);font-size:11px;font-weight:400}.field input,.field select,.field textarea{display:block;width:100%;min-width:0;padding:11px 12px;border:1px solid #c7d3de;border-radius:7px;background:#fff;color:var(--ink);font-size:15px;line-height:1.55}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue)}.form .btn{width:100%}.form__note{margin-top:12px;color:var(--muted);font-size:11px}.form__status{margin-top:15px;color:#0057aa;font-size:13px}.form__status:empty{display:none}

.footer{background:var(--fog)}.footer__inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;width:min(100%,var(--max));margin:auto;padding:34px 32px}.brand__mark--foot{width:150px}.footer__nav{display:flex;gap:24px}.footer__nav a{color:var(--muted);font-size:13px;text-decoration:none}.footer__nav a:hover{text-decoration:underline}.footer__meta{grid-column:1/-1;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}
.lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:50px 24px;background:rgba(4,12,20,.94)}.lightbox img{max-width:95vw;max-height:85vh;object-fit:contain}.lightbox__close{position:absolute;top:12px;right:18px;width:48px;height:48px;border:0;background:transparent;color:#fff;font-size:36px;cursor:pointer}

@media(max-width:1120px){.hero{grid-template-columns:1fr;gap:48px}.hero__copy{max-width:780px}.hero h1{max-width:800px}.architecture{max-width:800px}.proof__grid{grid-template-columns:1fr 1fr}.case{gap:38px;padding:44px}.collaboration-layout{gap:55px}.section--contact{gap:50px}}
@media(max-width:850px){.page-width{padding-inline:24px}.section{padding-block:84px}.nav__inner{padding-inline:24px}.nav__links{display:none}.nav__toggle{display:grid;align-content:center;gap:5px;width:44px;height:44px;padding:12px;border:1px solid var(--line);border-radius:7px;background:#fff}.nav__toggle span{display:block;height:2px;background:var(--ink)}.nav__mobile:not([hidden]){display:grid;max-height:calc(100dvh - 76px);overflow:auto;padding:10px 24px 24px;border-top:1px solid var(--line)}.nav__mobile>a{padding:13px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.nav__mobile .btn{margin-top:14px;border:0}.hero{padding-top:52px;padding-bottom:72px}.proof{padding-bottom:84px}.proof__heading,.decision-list article,.case,.collaboration-layout,.section--contact{grid-template-columns:1fr}.proof__heading{gap:22px}.proof__grid{grid-template-columns:1fr}.proof-card__visual{height:300px}.decision-list article{gap:25px}.case{padding:36px}.case__title h3{max-width:650px}.collaboration-layout{gap:58px}.section--contact{gap:58px}}
@media(max-width:620px){html{scroll-padding-top:76px}.page-width{padding-inline:19px}.section{padding-block:66px}.nav__inner{height:68px;padding-inline:19px}.brand__mark{width:154px}.nav__mobile:not([hidden]){padding-inline:19px;max-height:calc(100dvh - 68px)}.hero{padding-top:37px;padding-bottom:58px;gap:38px}.hero__context{font-size:13px;margin-bottom:17px}.hero h1{font-size:clamp(39px,11.8vw,56px);line-height:1.02}.hero__lead{margin-top:22px;font-size:18px}.hero__actions{align-items:stretch;flex-direction:column;gap:9px;margin-top:26px}.hero__actions .btn,.hero__actions .text-link{width:100%}.hero__actions .text-link{justify-content:center}.hero__note{margin-top:28px}.architecture{margin-inline:-3px;border-radius:17px}.architecture__head{display:block;padding:20px}.architecture__head h2{font-size:20px}.architecture__live{margin-top:15px}.architecture__controls{grid-template-columns:1fr;padding:15px}.architecture__controls fieldset{display:grid;grid-template-columns:72px repeat(3,1fr);align-items:center}.architecture__controls legend{margin:0}.architecture__controls button{min-width:0;padding-inline:5px}.architecture__stage{height:auto;display:grid;grid-template-columns:1fr;gap:10px;margin:0 15px;padding:16px}.architecture__stage svg{display:none}.system-node{position:relative!important;inset:auto!important;width:auto;min-height:0}.system-node:before{top:17px}.architecture__human{position:relative;left:auto;bottom:auto;width:auto;padding:11px 12px;border-left:2px solid var(--warm)}.architecture__summary{min-height:0;padding:17px 20px 21px}.proof{padding-bottom:66px}.proof__heading{margin-bottom:25px}.proof__heading p{font-size:16px}.proof-card__visual{height:215px}.proof-card__visual--teams{padding:20px 20px 0}.proof-card__content{padding:22px}.section-intro{margin-bottom:40px}.section-intro>p:last-child{font-size:16px}.decision-list article{padding:32px 0}.decision-question h3{font-size:29px}.decision-answer>p{font-size:16px}.decision-answer ul{display:block}.decision-answer li{width:fit-content;margin-top:7px}.case{margin-inline:-3px;padding:27px 20px;border-radius:17px}.case__title h3{font-size:33px}.case__lead{font-size:18px}.case__story dl>div{grid-template-columns:1fr;gap:3px}.case__media--double{grid-template-columns:1fr}.case__numbers{gap:45px}.case__numbers strong{font-size:50px}.collaboration__intro h2,.contact__intro h2{font-size:40px}.analysis-offer{padding:22px}.analysis-offer strong{font-size:48px}.journey li{grid-template-columns:36px 1fr;gap:12px}.contact-team h3{font-size:22px}.form{padding:27px 20px}.form__row{grid-template-columns:1fr;gap:0}.footer__inner{grid-template-columns:1fr;padding:29px 19px}.footer__meta{grid-column:auto}.footer__nav{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.architecture__stage path{animation:none}*,*:before,*:after{transition:none!important}}
@media print{.nav,.architecture__controls,.hero__actions,.form,.lightbox,.footer{display:none!important}.hero,.proof__heading,.decision-list article,.case,.collaboration-layout,.section--contact{display:block}.architecture{background:#fff;color:#000;border:1px solid #aaa;box-shadow:none}.architecture__stage{display:none}.collaboration-section,.case--ink{background:#fff;color:#000}.section{padding-block:35px}}
