:root{--ink:#132139;--muted:#5c6b82;--blue:#2463ed;--blue-hover:#174dca;--line:#d6dfeb;--pale:#f2f7fd;--white:#fff;--content:1280px;--gutter:clamp(24px,5.5vw,80px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:36px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-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;border-radius:3px}
::selection{background:#d9e7ff;color:var(--ink)}
.container{width:calc(100% - var(--gutter)*2);max-width:var(--content);margin-inline:auto}
.skip-link{position:fixed;top:-80px;left:20px;z-index:10;padding:14px 20px;background:var(--ink);color:white}.skip-link:focus{top:12px}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:104px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:34px;line-height:1;font-weight:700;letter-spacing:-1.8px}
.brand-mark{width:24px;height:32px;flex:none}
nav{display:flex;gap:42px;align-items:center;font-size:14px}
nav>a:not(.button){padding:16px 0;transition:color .18s}nav>a:hover{color:var(--blue)}
.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:54px;padding:16px 24px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:500;line-height:1.25;transition:background .2s,transform .2s;white-space:nowrap}
.button:hover{transform:translateY(-2px)}.button span{font-size:19px;line-height:1}
.button-dark{color:white;background:var(--ink)}.button-dark:hover{background:#293c59;color:white}
.button-blue{color:white;background:var(--blue)}.button-blue:hover{background:var(--blue-hover)}
.nav-cta{min-height:46px;padding:13px 22px;margin-left:8px;gap:16px}
.hero{min-height:575px;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;position:relative;padding-block:58px 76px;isolation:isolate}
.hero-copy{z-index:1}.hero h1{font-size:clamp(44px,4.8vw,69px);line-height:1.04;letter-spacing:-3.5px;font-weight:600;margin:0 0 28px}.hero h1 span{color:var(--blue)}
.hero-copy>p{font-size:20px;line-height:1.45;color:var(--muted);max-width:470px;margin:0 0 30px;letter-spacing:-.4px}
.hero-actions{display:flex;align-items:center;gap:27px}
.text-link{color:var(--blue);display:inline-flex;align-items:center;gap:14px;font-size:14px;line-height:1.4;padding-block:10px}.text-link span{font-size:25px;line-height:1;transition:transform .2s}.text-link:hover span{transform:translateX(5px)}.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.hero-art{width:125%;margin-left:-13%;position:relative;z-index:-1;pointer-events:none}.hero-art img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.principles{display:flex;justify-content:space-between;align-items:center;gap:28px;border:1px solid var(--line);min-height:68px;padding:18px 27px}
.principles p{font-size:15px;letter-spacing:-.3px;margin:0;line-height:1.5}.principles ul{list-style:none;display:flex;margin:0;padding:0;font-size:12px;color:var(--muted);white-space:nowrap}.principles li+li{border-left:1px solid #b8c7dc;margin-left:28px;padding-left:28px}
.section{padding-block:92px 84px}.section-label{font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:#697e9c;margin:0 0 24px}.section-label span{color:#6f85a4}
h2{font-size:clamp(34px,3.5vw,50px);font-weight:500;line-height:1.1;letter-spacing:-2.2px;margin:0}
.service-list{margin-top:45px}.service-row{display:grid;grid-template-columns:1fr 1.5fr 36px;gap:55px;border-top:1px solid var(--line);padding:30px 0;align-items:start;transition:color .2s,background .2s}.service-row:last-child{padding-bottom:0}.service-row:hover{color:var(--blue)}
h3{font-size:24px;line-height:1.25;letter-spacing:-.7px;font-weight:400;margin:0}
.service-row p{font-size:15px;line-height:1.5;color:var(--muted);max-width:435px;margin:0}.row-arrow{font-size:27px;justify-self:end;align-self:center;transition:transform .2s}.service-row:hover .row-arrow{transform:translate(3px,-3px)}
.products{background:var(--pale)}.products-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-block:60px;min-height:465px}.products-copy{padding-block:14px}.products-copy h2{margin-bottom:27px}.section-description{font-size:20px;line-height:1.45;color:var(--muted);letter-spacing:-.4px;margin:0 0 26px;max-width:530px}
.product-art{height:340px;position:relative;max-width:470px;width:100%;margin-inline:auto}.outline-square{position:absolute;border:1px solid #6595ff}.square-one{width:65%;height:73%;left:3%;top:18%}.square-two{width:43%;height:55%;left:49%;top:0;background:#e4effc66}.square-three{width:34%;height:48%;left:42%;top:42%}.solid-square{position:absolute;background:var(--blue);box-shadow:0 8px 22px #2463ed0c}.solid-one{width:25%;aspect-ratio:1;top:42%;left:42%}.solid-two{width:9%;aspect-ratio:1;top:65%;left:15%}.dot-field{position:absolute;background-image:radial-gradient(#75a1f5 .8px,transparent .8px);background-size:18px 18px}.dots-one{width:36%;height:38%;left:12%;top:23%}.dots-two{width:25%;height:39%;left:77%;top:64%}.construction-line{position:absolute;height:25%;width:1px;left:59%;top:84%;background:#6595ff}
.approach{padding-block:80px 88px}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);margin:58px 0 0;padding:0;gap:0}.steps li{padding-right:55px}.steps li+li{border-left:1px solid var(--line);padding-left:55px}.steps li:last-child{padding-right:0}.step-number{display:block;font-size:14px;color:#5c7394;margin-bottom:17px}.steps h3{font-size:26px;margin-bottom:17px}.steps p{color:var(--muted);font-size:16px;line-height:1.5;max-width:290px;margin:0}
.contact{background:var(--pale)}.contact-inner{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-block:60px}.contact h2{font-size:clamp(34px,3.5vw,49px)}.contact p{margin:18px 0 0;color:var(--muted);font-size:16px;line-height:1.5}.contact-actions{display:flex;flex-direction:column;align-items:center;gap:19px}.email-link{font-size:15px}.email-link:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer{display:flex;align-items:center;gap:26px;min-height:108px;font-size:12px;color:var(--muted)}.footer-brand{font-size:30px;color:var(--ink)}.footer-brand .brand-mark{width:21px;height:28px}.copyright{margin-left:auto}.back-top{display:inline-flex;gap:12px;align-items:center;margin-left:15px}.back-top:hover{color:var(--blue)}.back-top span{font-size:19px}
.menu-toggle{display:none}
@media(min-width:1550px){.hero{min-height:650px}.hero-art{width:130%}}
@media(max-width:1150px){.hero h1{letter-spacing:-2.6px}.hero-actions{gap:18px;align-items:flex-start;flex-direction:column}.hero{min-height:570px}.hero-copy>p{font-size:18px;max-width:400px}.principles{align-items:flex-start;flex-direction:column;gap:15px}.principles ul{width:100%;justify-content:space-between}.principles li+li{border:0;margin:0;padding:0}.service-row{gap:30px}.products-inner{gap:45px}.steps li{padding-right:30px}.steps li+li{padding-left:30px}.product-art{height:300px}.site-footer{gap:18px}.back-top{margin-left:0}}
@media(max-width:760px){html{scroll-padding-top:22px}.header-inner{min-height:86px;flex-wrap:wrap;position:relative}.brand{font-size:30px}.brand-mark{width:21px;height:28px}.menu-toggle:not([hidden]){width:44px;height:44px;padding:10px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:1px solid var(--line);border-radius:4px;cursor:pointer}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);transition:transform .18s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}nav{width:100%;gap:8px;flex-wrap:wrap;padding:8px 0 20px;justify-content:space-between}nav>a:not(.button){padding:12px 8px}.nav-cta{margin:0;min-height:44px}.js nav{display:none}.js nav.is-open{display:flex}.hero{display:flex;flex-direction:column;align-items:stretch;padding-block:40px 18px;min-height:0;overflow:hidden}.hero h1{font-size:clamp(43px,7.7vw,58px);letter-spacing:-2.3px;line-height:1.06;margin-bottom:23px}.hero-copy>p{font-size:18px;max-width:460px;margin-bottom:24px}.hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px 24px}.button{padding:16px 20px;gap:16px}.text-link{font-size:14px}.hero-art{width:110%;margin:-2% -5% -4%;max-width:640px;align-self:center}.principles{padding:21px 20px;gap:18px}.principles p{font-size:14px}.principles p span{display:block}.principles ul{font-size:10px;gap:10px}.section{padding-block:65px}.section-label{font-size:11px;margin-bottom:21px}h2{font-size:37px;letter-spacing:-1.5px}.service-list{margin-top:32px}.service-row{grid-template-columns:1fr 25px;gap:13px 20px;padding-block:25px}.service-row h3{font-size:22px}.service-row h3 br{display:none}.service-row p{grid-column:1;grid-row:2;font-size:15px;max-width:100%}.row-arrow{grid-column:2;grid-row:1;align-self:start;font-size:24px}.products-inner{display:flex;flex-direction:column;align-items:stretch;padding-block:48px 56px;gap:42px}.product-art{width:85%;max-width:360px;height:270px}.products-copy{padding:0}.products-copy h2{margin-bottom:20px}.section-description{font-size:18px;margin-bottom:18px}.steps{grid-template-columns:1fr;margin-top:35px}.steps li,.steps li+li{padding:25px 0;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:30px 1fr;gap:12px 17px}.steps li:last-child{padding-bottom:0}.step-number{margin:4px 0 0}.steps h3{font-size:24px;margin:0}.steps p{grid-column:2;max-width:100%;font-size:15px}.contact-inner{flex-direction:column;align-items:flex-start;padding-block:48px;gap:27px}.contact h2{font-size:37px}.contact p{font-size:16px}.contact-actions{align-items:flex-start;gap:17px}.site-footer{flex-wrap:wrap;padding-block:29px;gap:17px 20px;min-height:0}.tagline{margin:0}.copyright{margin:0;flex-basis:100%;order:3}.back-top{margin-left:auto}.footer-brand{font-size:28px}.back-top{font-size:11px}}
@media(max-width:390px){.hero h1{font-size:40px;letter-spacing:-2px}.hero-actions{gap:10px}.principles ul{flex-wrap:wrap;gap:12px 18px}.site-footer .tagline{display:none}nav{font-size:13px}.nav-cta{padding:12px;gap:8px}.product-art{height:235px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover,.text-link:hover span,.service-row:hover .row-arrow{transform:none}}
