@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,figure,blockquote{margin:0}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}}@layer base{:root{--paper:#f4f5f0;--ink:#081426;--muted:#46546c;--blue:#2164ff;--line:#ccd2d6;--lime:#d4f078}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Arial,Helvetica Neue,sans-serif;font-size:16px;line-height:1.65}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.header :focus-visible,.opening :focus-visible,.contact :focus-visible,.footer :focus-visible{outline-color:var(--lime)}h1,h2,h3{letter-spacing:-.055em;text-wrap:balance;font-weight:600;line-height:1.03}h1{font-size:clamp(3.5rem,5.7vw,5.7rem)}h2{font-size:clamp(2.6rem,4.5vw,4.3rem)}h3{letter-spacing:-.04em;font-size:1.9rem}p{text-wrap:pretty}ul{padding:0;list-style:none}a,summary{-webkit-tap-highlight-color:transparent}a:hover{text-decoration-thickness:1px}}@layer layout{.container{width:min(1280px,100% - 128px);margin-inline:auto}.section-space{padding-block:88px}.header{background:var(--ink);color:#f4f7ff;z-index:5;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:24px;height:92px;display:flex}.brand{flex-shrink:0;display:inline-block}.brand img{object-fit:contain;width:80px;height:44px}.desktop-nav{align-items:center;gap:34px;font-size:.85rem;display:flex}.desktop-nav a:hover,.desktop-nav summary:hover,.footer-links a:hover{color:var(--lime)}.desktop-nav>a{align-items:center;min-height:44px;display:flex}.mobile-menu{display:none}.opening{background:var(--ink);color:#f4f7ff;overflow:hidden}.hero{grid-template-columns:1.04fr 1fr;align-items:center;min-height:660px;padding-block:32px 70px;display:grid;position:relative}.hero-copy{z-index:1;padding-bottom:32px;position:relative}.hero h1{white-space:nowrap;margin-block:24px}.hero h1 span{color:var(--lime)}.hero-description{color:#e0e7f1;letter-spacing:-.025em;max-width:510px;font-size:1.2rem;line-height:1.5}.hero-actions{flex-wrap:wrap;align-items:center;gap:30px;margin-top:30px;display:flex}.hero-art{width:53%;position:absolute;top:48%;right:-2%;transform:translateY(-50%)}.hero-art>img{width:100%;height:auto;mask-image:radial-gradient(62% 57%,#000 58%,#0000 94%)}.hero-stages{grid-template-columns:repeat(3,1fr);gap:26px;margin:0;padding:0;list-style:none;display:grid;position:absolute;bottom:32px;left:48%;right:0}.hero-stages li{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #647186;padding-bottom:10px;font:.62rem/1.5 monospace}.hero-stages li:first-child{border-color:var(--lime)}.connections{border-bottom:1px solid var(--line)}.connections-inner{align-items:center;gap:44px;min-height:126px;padding-block:26px;display:flex}.connections .eyebrow{color:var(--muted);flex:0 0 190px;font-size:.68rem;font-weight:400}.client-logos{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));place-items:center;display:grid}.client-logo,.client-wordmark{border-left:1px solid var(--line);place-items:center;width:100%;height:56px;padding-inline:22px;display:grid}.client-logo img{object-fit:contain;width:100%;max-width:170px;height:auto}.client-logo.padded{overflow:hidden}.client-logo.padded img{object-fit:contain;width:160px;max-width:none;height:140px;margin-top:-42px}.client-logo.giro img{max-height:42px}.client-wordmark{letter-spacing:-.08em;justify-content:center;font-size:2rem;font-weight:700;display:flex}.client-wordmark span{align-self:flex-start;margin-left:3px;padding-top:12px;font-size:.6rem}.services h2{margin-block:20px 12px}.section-lead{letter-spacing:-.035em;font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.4}.service-grid{grid-template-columns:repeat(3,1fr);margin-top:46px;display:grid}.service-card{border-left:1px solid var(--line);flex-direction:column;align-items:flex-start;padding:0 32px 8px;display:flex;position:relative}.service-card:first-child{padding-left:24px}.service-card:last-child{padding-right:0}.service-art{aspect-ratio:1.5;object-fit:contain;mix-blend-mode:multiply;width:100%;height:auto;margin-bottom:14px;mask-image:radial-gradient(#000 46%,#0000 74%)}.service-card h3{max-width:250px;margin-block:0 18px}.service-card p{color:var(--muted);max-width:320px;font-size:1rem;line-height:1.5}.service-card .text-link{color:#184fcc;margin-top:18px;font-size:.8rem}.section-tail{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;margin-top:40px;padding-top:24px;display:flex}.section-tail p{color:var(--muted);max-width:530px;font-size:.87rem}.approach{background:#dfeeff;padding-block:70px}.approach-inner{grid-template-columns:1.05fr 1fr;align-items:center;gap:100px;display:grid}.approach h2{margin-block:24px}.approach-heading>p:not(.eyebrow){color:var(--muted);max-width:480px;font-size:.95rem}.approach-heading .approach-belief{margin-top:20px;font-size:.82rem}.approach-belief strong{color:var(--ink);font-weight:500}.steps{margin:0;padding:0;list-style:none}.steps li{gap:30px;padding-bottom:38px;display:flex;position:relative}.steps li:last-child{padding-bottom:0}.steps li:not(:last-child):before{content:"";background:#79a6ff;width:1px;position:absolute;top:40px;bottom:0;left:20px}.steps h3{letter-spacing:-.035em;margin-top:6px;font-size:1.25rem;line-height:1.3}.steps p{color:var(--muted);margin-top:9px;font-size:.92rem;line-height:1.5}.section-heading h2{margin-block:20px}.section-heading>p:last-child{color:var(--muted)}.testimonials{padding-bottom:64px}.quote-grid{grid-template-columns:1.15fr 1fr;gap:64px;margin-top:42px;display:grid}.quote{border-top:1px solid var(--line);flex-direction:column;padding-top:24px;display:flex}.quote-sign{color:var(--blue);letter-spacing:-.08em;height:48px;font-size:5rem;line-height:1}.quote blockquote{letter-spacing:-.025em;padding-block:16px 30px;font-size:clamp(1.2rem,1.8vw,1.6rem);line-height:1.45}.quote figcaption{color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding-top:18px;font-size:.8rem;display:flex}.quote figcaption strong{color:var(--ink);font-weight:600}.quote-brand{letter-spacing:-.06em;color:var(--ink);font-size:1.6rem;font-weight:700}.faq{border-top:1px solid var(--line);grid-template-columns:.85fr 1.15fr;gap:80px;padding-top:64px;display:grid}.faq h2{margin-block:24px}.faq>div>p:last-child{color:var(--muted)}.contact{background:var(--blue);color:#fff;padding-block:48px}.contact-inner{justify-content:space-between;align-items:center;gap:48px;display:flex}.contact h2{margin-top:18px;font-size:clamp(2.8rem,4.5vw,4rem)}.contact .eyebrow{color:#fff}.contact-actions{flex-direction:column;align-items:center;gap:16px;min-width:260px;display:flex}.contact-actions .button{width:100%}.contact-email{font-size:.95rem}.contact-email:hover{text-underline-offset:5px;text-decoration:underline}.footer{background:var(--ink);color:#dce5f2}.footer-inner{justify-content:space-between;align-items:center;gap:32px;padding-block:30px;display:flex}.footer p{font-size:.73rem}.footer-links{gap:22px;font-size:.73rem;display:flex}.footer-links span{color:#a9b6c9}.legal{max-width:900px}.legal h1{margin-block:24px 42px}.legal h1 span{color:var(--blue)}.legal h2{margin-block:40px 16px;font-size:1.8rem}.legal p{max-width:680px;color:var(--muted)}.legal p a{color:#184fcc;text-decoration:underline}.legal .button{margin-top:42px}.solutions-intro{padding-bottom:48px}.solutions-intro .breadcrumb{color:var(--muted);margin-bottom:30px;font-size:.76rem}.solutions-intro h1{max-width:900px;margin-block:22px}.solutions-intro .section-lead{max-width:800px;color:var(--muted)}.solution-index{flex-wrap:wrap;gap:18px 32px;margin-top:40px;display:flex}.solution-index a{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:44px;font-size:.85rem;display:inline-flex}.solution-index a:hover{color:#184fcc}.solution-index span{color:#184fcc;font-family:monospace}.solution-detail{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-block:64px;display:grid}.solution-visual img{mix-blend-mode:multiply;width:100%;height:auto;margin-top:20px;mask-image:radial-gradient(#000 46%,#0000 74%)}.solution-copy h2{margin-bottom:22px;font-size:clamp(2.3rem,3.5vw,3.4rem)}.solution-copy>p{color:var(--muted);margin-bottom:18px}.solution-copy .solution-summary{color:var(--ink);font-size:1.3rem;line-height:1.4}.solution-connection{border-left:2px solid var(--blue);margin-block:26px 14px;padding-left:20px}.solution-connection h3{letter-spacing:-.02em;margin-bottom:8px;font-size:1rem}.solution-connection p{color:var(--muted);font-size:.9rem}.solution-next{justify-content:space-between;align-items:center;gap:32px;padding-block:32px 64px;display:flex}.solution-next p{color:var(--muted);font-size:.9rem}}@layer components{.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-family:monospace;font-size:.69rem;font-weight:400;line-height:1.6}.eyebrow.blue{color:#184fcc}.button{background:var(--blue);color:#fff;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:20px;min-height:48px;padding:15px 24px;font-size:.9rem;font-weight:500;line-height:1.4;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#164fcd;transform:translateY(-2px)}.button.small{border-radius:15px;gap:12px;min-height:44px;padding:10px 18px;font-size:.79rem}.button.outline{border-color:var(--lime);background:0 0}.button.outline:hover{color:var(--ink);background:var(--lime)}.button.lime{background:var(--lime);color:var(--ink)}.button.lime:hover{background:#e2ff94}.button.light{color:var(--ink);background:#fff}.button.light:hover{background:var(--lime)}.text-link{align-items:center;gap:16px;min-height:44px;font-size:.86rem;line-height:1.5;display:inline-flex}.text-link:hover{text-underline-offset:6px;text-decoration:underline}.hero-actions .text-link{border-bottom:1px solid #8090a6}.art-label{letter-spacing:.01em;border-bottom:1px solid #a4b9df;padding-bottom:8px;font-size:.7rem;position:absolute}.label-strategy{width:100px;top:18%;left:5%}.label-engineering{text-align:right;width:100px;top:46%;right:1%}.label-evolution{width:90px;top:68%;left:3%}.card-number{color:var(--muted);font-family:monospace;font-size:.7rem;position:absolute;top:6px}.tags{color:var(--muted);flex-wrap:wrap;gap:5px 10px;margin:24px 0 0;font-size:.76rem;display:flex}.tags li:not(:last-child):after{content:"·";margin-left:10px}.step-number{color:#184fcc;border:1px solid #659aff;border-radius:50%;flex-shrink:0;place-content:center;width:41px;height:41px;font-size:.8rem;display:inline-grid}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;gap:20px;padding-block:23px;font-size:.98rem;line-height:1.5;list-style:none;display:flex}summary::-webkit-details-marker{display:none}.faq-list summary span{color:#184fcc;font-size:1.4rem;line-height:1.1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding-bottom:25px;font-size:.92rem}.more-menu{position:relative}.more-menu summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;list-style:none;display:flex}.menu-panel{background:#10213b;border:1px solid #31435d;border-radius:12px;flex-direction:column;min-width:205px;padding:12px 20px;display:flex;position:absolute;top:48px;left:-20px;box-shadow:0 12px 30px #0003}.menu-panel a{padding-block:12px}.skip-link{z-index:20;background:var(--lime);color:var(--ink);padding:14px 24px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@layer responsive{@media (width>=1600px){.hero{min-height:710px}}@media (width<=1150px){.container{width:calc(100% - 80px)}.desktop-nav{gap:22px;font-size:.8rem}.hero{min-height:560px}.hero-description{max-width:415px;font-size:1.05rem}.hero-actions{gap:20px}.hero-actions .text-link{font-size:.78rem}.connections-inner{gap:24px}.connections .eyebrow{flex-basis:150px}.client-logo,.client-wordmark{padding-inline:14px}.client-wordmark{font-size:1.7rem}.approach-inner{gap:56px}.service-card{padding-inline:24px}.faq{gap:48px}.footer-links{gap:14px}.art-label{width:70px;font-size:.6rem}}@media (width<=800px){.container{width:calc(100% - 40px)}.header-inner{flex-wrap:wrap;gap:0;height:auto;min-height:78px;padding-block:16px}.header-inner>.brand{align-self:flex-start;margin-top:3px}.brand img{width:70px;height:38px}.desktop-nav,.header-cta{display:none}.mobile-menu{margin-left:auto;display:block}.mobile-menu summary{cursor:pointer;align-items:center;gap:18px;min-height:44px;padding:6px 0 6px 16px;font-size:.9rem;list-style:none;display:flex}.mobile-menu summary span{color:var(--lime);font-size:1.5rem}.mobile-menu[open]{flex-basis:calc(100% - 70px)}.mobile-menu[open] summary{justify-content:flex-end}.mobile-menu[open] summary span{transform:rotate(45deg)}.mobile-menu nav{flex-direction:column;padding-block:20px 10px;display:flex}.mobile-menu nav a{padding:12px 0}.hero{grid-template-columns:1fr;min-height:auto;padding-block:34px 80px}.hero-copy{padding:0}.hero h1{margin-block:20px;font-size:clamp(2.9rem,8.4vw,5.7rem)}.hero-description{max-width:540px;font-size:1.05rem}.hero-actions{gap:16px 24px;margin-top:26px}.hero-actions .text-link{font-size:.82rem}.hero-art{justify-self:center;width:min(112%,620px);margin-top:-4px;margin-left:-6%;position:relative;top:auto;right:auto;transform:none}.hero-stages{gap:18px;bottom:28px;left:0;right:0}.hero-stages li{font-size:.55rem}.art-label{width:75px;font-size:.64rem}.label-strategy{left:8%}.label-engineering{right:4%}.label-evolution{left:6%}.connections-inner{flex-wrap:wrap;gap:24px;padding-block:28px 32px}.connections .eyebrow{text-align:center;flex-basis:100%}.connections .eyebrow br{display:none}.client-logos{flex-basis:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0}.client-logo:nth-child(odd){border-left:0}.client-logo.giro img{max-width:155px}.client-wordmark{font-size:1.75rem}.section-space{padding-block:60px}.services h2{font-size:clamp(2.5rem,7.2vw,4rem)}.service-grid{grid-template-columns:1fr;gap:30px;margin-top:32px}.service-card,.service-card:first-child,.service-card:last-child{border-left:0;border-bottom:1px solid var(--line);padding:0 0 28px}.service-art{aspect-ratio:1.75;object-fit:contain;margin-inline:auto;max-width:380px;margin-bottom:12px}.service-card h3{max-width:none;font-size:1.85rem}.service-card p{max-width:600px}.service-card .text-link{margin-top:12px}.tags{margin-top:18px}.section-tail{border:0;flex-direction:column;align-items:flex-start;gap:12px;margin-top:24px;padding-top:0}.approach-inner{grid-template-columns:1fr;gap:40px}.steps li{gap:24px}.quote-grid{grid-template-columns:1fr;gap:34px;margin-top:32px}.quote blockquote{font-size:1.35rem}.faq{grid-template-columns:1fr;gap:32px}.contact{padding-block:42px}.contact-inner{flex-direction:column;align-items:flex-start;gap:30px}.contact h2{font-size:clamp(2.8rem,8vw,4rem)}.contact-actions{align-items:flex-start;width:100%;min-width:0}.contact-actions .button{width:auto;min-width:240px}.footer-inner{flex-wrap:wrap;gap:22px}.footer p{text-align:right;font-size:.65rem}.footer-links{border-top:1px solid #31435d;flex-wrap:wrap;flex-basis:100%;justify-content:space-between;gap:16px;padding-top:20px}.solution-detail{grid-template-columns:1fr;gap:24px;padding-block:42px}.solution-visual img{max-width:440px;margin:16px auto 0}.solution-copy h2{font-size:2.5rem}.solution-next{flex-direction:column;align-items:flex-start;gap:16px}.solutions-intro h1{font-size:clamp(3rem,8.5vw,5rem)}}@media (width<=380px){.hero h1{font-size:2.6rem}.hero-actions{gap:12px}.hero-actions .button{padding-inline:18px}.hero-actions .text-link{gap:8px;font-size:.76rem}.client-logo.giro img{max-width:130px}.footer p{font-size:.6rem}.art-label{width:62px;font-size:.57rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}}
