﻿:root{--blue:#214ee8;--ink:#20242d;--muted:#5a6374;--line:#dbe0e9;--pale:#f3f5f9;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--white);font-family:Arial,Helvetica,sans-serif;font-size:20px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:6px}::selection{background:var(--blue);color:white}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.header{min-height:108px;display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{font-size:29px;font-weight:800;letter-spacing:-1.4px;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.brand-icon{color:var(--blue);font-size:49px;line-height:1;transform:rotate(-20deg)}.brand-dot{font-size:16px;align-self:flex-start;padding-top:7px;letter-spacing:0}.header nav{display:flex;gap:26px;margin:auto;font-size:16px}.header nav a:hover,.text-link:hover,.footer a:hover{color:var(--blue)}.header-phone{font-size:16px;white-space:nowrap}.header-phone span{color:var(--blue);margin-left:8px}.menu-toggle{border:1px solid var(--line);background:white;padding:8px 14px;font-size:16px}.skip-link{position:fixed;left:20px;top:-100px;padding:12px;background:white;z-index:20}.skip-link:focus{top:12px}.hero{position:relative;padding-top:54px;overflow:hidden}.eyebrow{font-size:16px;font-weight:500;letter-spacing:1.5px;margin:0 0 32px;display:flex;align-items:center;gap:10px}.status-dot{width:8px;height:8px;background:var(--blue);border-radius:50%}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(52px,6.9vw,100px);line-height:1.04;letter-spacing:-5px;font-weight:500;margin:0 0 32px;position:relative;z-index:1}h1 span,h2 span{color:var(--blue)}.hero-copy{color:var(--muted);max-width:740px;margin-bottom:30px;position:relative;z-index:1}.actions{display:flex;align-items:center;gap:32px;position:relative;z-index:1}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;background:var(--blue);color:white;padding:18px 24px;font-size:18px;transition:background .2s,transform .2s}.button:hover{background:#1438af;transform:translateY(-2px)}.button span{font-size:25px;line-height:1}.text-link{display:inline-flex;gap:25px;align-items:center;font-size:18px;border-bottom:1px solid currentColor;padding:9px 0;transition:color .2s}.hero-bottom{border-top:1px solid var(--line);margin-top:65px;padding:23px 0;display:flex;justify-content:space-between;gap:20px;font-size:16px;letter-spacing:1px;position:relative;z-index:1}.hero-bottom a{font-size:24px;line-height:1}.hero-orbit{position:absolute;width:390px;height:390px;right:-92px;bottom:116px;transform:rotate(-28deg);opacity:.55;pointer-events:none;z-index:0}.hero-orbit i{position:absolute;border:1px solid #b9c8f4;width:100%;height:100%;border-radius:48%;inset:0}.hero-orbit i:nth-child(2){transform:scale(.86)}.hero-orbit i:nth-child(3){transform:scale(.72)}.hero-orbit i:nth-child(4){transform:scale(.58)}.hero-orbit i:nth-child(5){transform:scale(.44)}.section{padding-top:100px;padding-bottom:100px}h2{font-size:clamp(36px,4.1vw,60px);line-height:1.12;letter-spacing:-2.3px;font-weight:500;margin-bottom:30px}.intro{max-width:800px;color:var(--muted);margin-bottom:44px}.capabilities{padding:0;list-style:none;margin:56px 0 0}.capabilities li{display:flex;align-items:center;gap:30px;border-top:1px solid var(--line);padding:25px 0}.capabilities li:last-child{border-bottom:1px solid var(--line)}.row-number{font-size:16px;color:var(--blue);min-width:32px}.capabilities h3{font-size:clamp(22px,2.7vw,37px);font-weight:400;letter-spacing:-.8px;margin:0}.row-mark{margin-left:auto;color:var(--blue);font-size:30px}.business{background:var(--blue);color:white;position:relative;overflow:hidden}.business .wrap{position:relative}.business .intro{color:#edf1ff}.inline-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:36px 0}.inline-list li{border:1px solid #809afa;border-radius:40px;padding:9px 18px;font-size:16px}.business .text-link:hover{color:#d6e0ff}.technical-cross{position:absolute;right:0;top:75px;font-size:110px;font-weight:200;opacity:.4}.personal .intro{max-width:770px}.digital{background:var(--pale)}.service-band{border-top:1px solid #cbd2df;margin-top:42px;padding-top:28px}.service-label{display:flex;justify-content:space-between;color:var(--blue);font-size:16px;letter-spacing:2px;margin-bottom:28px}.service-band h3{font-size:clamp(30px,3vw,44px);font-weight:400;letter-spacing:-1.5px;line-height:1.2;margin-bottom:20px}.service-band p{color:var(--muted);max-width:760px;margin-bottom:0}.material-tape{display:flex;flex-wrap:wrap;gap:20px 48px;padding:28px 0;border-block:1px solid var(--line);color:var(--blue);font-size:clamp(35px,5.5vw,76px);font-weight:500;letter-spacing:-2px}.material-note{font-size:16px;color:var(--muted);margin-top:20px;margin-bottom:0}.projects{background:var(--pale)}.project{margin:56px 0 80px}.project:last-child{margin-bottom:0}.project-image{position:relative;background:#e9edf2;overflow:hidden}.project img{display:block;width:100%;height:auto;max-height:590px;object-fit:contain;transition:transform .6s}.project-image:hover img{transform:scale(1.02)}.image-label{position:absolute;top:24px;left:24px;font-size:16px;background:white;padding:8px 14px;z-index:1;letter-spacing:1px}.project figcaption{padding-top:26px}.project .eyebrow{margin-bottom:12px;color:var(--blue)}.project h3{font-size:clamp(27px,3vw,40px);line-height:1.2;font-weight:400;letter-spacing:-1px;margin-bottom:16px}.project p:last-child{color:var(--muted);max-width:870px;margin-bottom:0}.contact{background:#eaf0ff}.contact h2{font-size:clamp(66px,9vw,130px);line-height:.97;letter-spacing:-5px}.contact .intro{max-width:700px}.contact-email{display:block;width:fit-content;font-size:clamp(30px,5.4vw,76px);letter-spacing:-2px;line-height:1.3;color:var(--blue);border-bottom:2px solid var(--blue);margin-bottom:22px}.contact-email span{margin-left:30px}.contact-phone{display:block;width:fit-content;font-size:clamp(24px,3vw,40px);letter-spacing:-1px}.contact-note{font-size:16px;color:var(--muted);margin:30px 0 0}.footer{padding-top:60px;padding-bottom:24px}.footer>.brand{margin-bottom:24px}.footer p{margin-bottom:12px;font-size:16px}.requisites{display:flex;flex-wrap:wrap;gap:8px 26px}.address{color:var(--muted);max-width:700px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:40px;padding-top:22px;font-size:16px;color:var(--muted)}.reveal.is-visible{animation:reveal .65s ease both}@keyframes reveal{from{opacity:.45;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.hero-orbit{right:0}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{gap:20px}.header nav{gap:18px}.header-phone{display:none}.header nav{margin-left:auto;margin-right:0}.hero-orbit{opacity:.3;right:-180px}h1{letter-spacing:-3px}.technical-cross{font-size:70px}}
@media(max-width:700px){body{font-size:18px}.wrap{width:calc(100% - 40px)}.header{min-height:84px;flex-wrap:wrap;padding-block:16px;gap:14px}.brand{font-size:25px}.brand-icon{font-size:38px}.menu-toggle:not([hidden]){display:flex;align-items:center;gap:18px;margin-left:auto}.header nav{width:100%;flex-wrap:wrap;margin:0;gap:14px 24px;padding:10px 0}.js .header nav{display:none}.js .header nav.is-open{display:flex}.hero{padding-top:34px}.eyebrow{font-size:16px;letter-spacing:.7px;margin-bottom:26px;align-items:flex-start}.hero>.eyebrow{max-width:280px}.status-dot{flex:none;margin-top:8px}h1{font-size:clamp(39px,8.8vw,62px);letter-spacing:-1.9px;line-height:1.08;margin-bottom:25px}.desktop-break{display:none}.hero-copy{max-width:560px}.actions{align-items:stretch;flex-direction:column;gap:15px}.button{justify-content:space-between;width:fit-content;min-width:245px}.actions .text-link{width:fit-content}.hero-bottom{margin-top:40px;font-size:16px;letter-spacing:0;align-items:center}.hero-bottom>span:nth-child(2){display:none}.hero-orbit{width:250px;height:250px;right:-150px;bottom:130px;opacity:.23}.section{padding-top:64px;padding-bottom:64px}h2{font-size:36px;letter-spacing:-1.4px}.intro{margin-bottom:30px}.capabilities{margin-top:34px}.capabilities li{gap:13px;padding:22px 0}.capabilities h3{font-size:23px;letter-spacing:-.4px;line-height:1.25}.row-number{min-width:22px}.row-mark{font-size:23px}.technical-cross{display:none}.inline-list{gap:9px}.inline-list li{padding:7px 12px}.service-band{margin-top:34px}.service-band h3{font-size:32px}.material-tape{gap:12px 26px;font-size:42px;letter-spacing:-1.3px}.project{margin:36px 0 54px}.project img{max-height:none;object-fit:contain}.image-label{top:12px;left:12px;padding:5px 10px}.project figcaption{padding-top:20px}.project .eyebrow{line-height:1.5}.project h3{font-size:29px}.contact h2{font-size:68px;letter-spacing:-3px}.contact-email{font-size:clamp(29px,8vw,48px);letter-spacing:-1.2px}.contact-email span{margin-left:10px}.contact-phone{font-size:27px}.footer{padding-top:40px}.requisites{display:flex;flex-direction:column;gap:5px}.footer-bottom{align-items:flex-start}.footer-bottom>span{max-width:200px}.footer-bottom>a{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.project-image:hover img{transform:none}}

.material-group-title{font-size:20px;font-weight:400;line-height:1.4;margin:36px 0 16px}
.material-descriptions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;border-block:1px solid var(--line);padding:26px 0}.material-descriptions h4{font-size:clamp(36px,4.5vw,64px);font-weight:500;letter-spacing:-2px;line-height:1.15;color:var(--blue);margin:0 0 20px}.material-descriptions p{font-size:20px;line-height:1.5;letter-spacing:0;margin:0 0 16px}.material-descriptions .material-use{color:var(--muted);margin-bottom:0}@media(max-width:1100px){.material-descriptions{grid-template-columns:1fr;gap:24px}.material-descriptions article+article{border-top:1px solid var(--line);padding-top:24px}.material-descriptions h4{font-size:42px;margin-bottom:14px}}@media(max-width:700px){.material-descriptions p{font-size:18px}}
