@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--navy:#071b3d;--blue:#245bff;--white:#f5f7fc;--text:#182338;--line:#d9dfeb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--white);color:var(--text);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #7294ff;outline-offset:6px}.defs{position:absolute;width:0;height:0}.progress{position:fixed;z-index:100;top:0;left:0;width:0;height:3px;background:#5d8aff}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;width:100%;z-index:10;color:white;border-bottom:1px solid #ffffff20}.brand{display:flex;align-items:center;gap:12px}.brand svg{width:51px;height:36px;fill:currentColor}.brand>span{font-family:'Manrope',sans-serif;font-size:20px;letter-spacing:2.5px;font-weight:800;line-height:1.1}.brand small{display:block;font-size:8px;letter-spacing:6.7px;margin-top:6px;font-weight:500}nav{display:flex;align-items:center;gap:36px;font-size:13px}nav>a:not(.nav-cta){opacity:.8}nav a:hover{opacity:1;color:#9db8ff}.nav-cta{padding:13px 19px;border:1px solid #ffffff65;border-radius:4px}.nav-cta span{margin-left:25px}.menu{display:none}.hero{position:relative;min-height:790px;height:100svh;max-height:1100px;background:#041125;color:white;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:60% center;animation:hero-in 2s ease both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#041125e8 0%,#0411259c 32%,#04112508 70%),linear-gradient(0deg,#041125dc,transparent 30%,#04112540)}.hero-copy{position:relative;padding:225px 5% 170px;z-index:1;max-width:950px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;display:flex;align-items:center;gap:10px}.eyebrow i{width:6px;height:6px;border-radius:50%;background:#7097ff;box-shadow:0 0 14px #245bff}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif}h1{font-size:clamp(54px,6.2vw,94px);line-height:1.08;letter-spacing:-4px;font-weight:500;margin:30px 0 25px}em{font-style:normal;color:#92b0ff}.hero-description{font-size:17px;line-height:1.75;color:#c2cbdc;margin-bottom:34px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;padding:18px 24px;background:var(--blue);color:white;border:0;border-radius:3px;font-size:13px;font-weight:600;cursor:pointer;transition:background .25s,transform .25s,box-shadow .25s}.button:hover{background:#1748df;transform:translateY(-3px);box-shadow:0 12px 34px #245bff40}.button span{font-size:21px}.hero-bottom{position:absolute;bottom:35px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.6px;color:#bdc8db}.hero-bottom a{font-size:11px;letter-spacing:.2px;color:white}.hero-bottom a span{margin-left:30px}.hero-index{position:absolute;right:5%;top:140px;font-size:9px;letter-spacing:2px;color:#b4c7ee}.ticker{overflow:hidden;background:var(--blue);padding:20px 0;color:white;white-space:nowrap;font-size:12px;letter-spacing:2px}.ticker>div{width:max-content;animation:ticker 38s linear infinite}.ticker b{font-size:24px;margin:0 65px;font-weight:400}.section{padding:105px 7%}.section-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;color:#5a687f;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:65px}.about-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}h2{font-size:clamp(36px,4vw,58px);line-height:1.17;letter-spacing:-2.3px;font-weight:500}h2 span{color:#718097}.about-text{padding-top:5px}.about-text p{font-size:14px;line-height:1.9;color:#617087}.about-text .large{font-size:21px;line-height:1.5;color:var(--text);margin-bottom:25px}.text-link{font-size:12px;display:inline-flex;gap:45px;border-bottom:1px solid #aab4c5;padding:10px 0;margin-top:15px}.text-link span{color:var(--blue)}.services{background:#eaf0f9;padding-top:80px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;line-height:1.8;color:#617087;margin-bottom:5px}.service{border-top:1px solid #cbd5e4}.service:last-child{border-bottom:1px solid #cbd5e4}.service summary{list-style:none;display:flex;align-items:center;gap:35px;cursor:pointer;padding:30px 0}.service summary::-webkit-details-marker{display:none}.number{font-size:11px;color:#718097}.service h3{font-size:25px;font-weight:500;letter-spacing:-.7px;margin:0;flex:1}.service-tag{font-size:8px;letter-spacing:1.4px;color:#687991}.plus{border:1px solid #bcc9de;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:24px;font-weight:400;color:var(--blue);transition:transform .3s}.service[open] .plus{transform:rotate(45deg);background:var(--blue);color:white;border-color:var(--blue)}.service[open] h3{color:var(--blue)}.service-body{padding:0 0 35px 48px;display:grid;grid-template-columns:1fr 1fr;gap:10px 80px;animation:body-in .4s ease}.service-body p,.service-body ul{font-size:13px;line-height:1.8;color:#5e6c82;margin:0}.service-body ul{padding-left:17px}.service-body a{grid-column:1/-1;font-size:12px;color:var(--blue);margin-top:15px}.connection{background:#06162f;color:white;display:grid;grid-template-columns:1fr 1fr;min-height:560px;overflow:hidden}.connection-copy{padding:100px 12% 95px 4%;align-self:center}.connection-copy h2{font-size:43px;margin:25px 0}.connection-copy>p:not(.eyebrow){font-size:13px;color:#a6b6d1;line-height:1.9}.connection-copy .eyebrow{color:#86a5f6}.audiences{display:flex;gap:9px;flex-wrap:wrap;margin-top:30px}.audiences span{border:1px solid #ffffff25;border-radius:30px;padding:10px 15px;font-size:10px;color:#c6d0e3}.orbital{position:relative;min-height:480px;display:grid;place-items:center;perspective:850px;background:radial-gradient(ellipse at center,#1240b13d,transparent 65%)}.logo-sculpture{width:58%;transform-style:preserve-3d;animation:float 8s ease-in-out infinite;filter:drop-shadow(3px 5px 0 #102a77) drop-shadow(6px 9px 0 #081d59) drop-shadow(0 25px 25px #0007)}.logo-sculpture svg{width:100%;overflow:visible}.orbit{position:absolute;width:78%;height:78%;border:1px solid #4066b933;border-radius:50%;transform:rotateX(60deg) rotateZ(-25deg);animation:orbit 20s linear infinite}.orbit-two{width:92%;height:92%;animation-direction:reverse;border-color:#4066b91a}.orbit-one:after{content:'';width:8px;height:8px;background:#5f91ff;box-shadow:0 0 20px #518aff;position:absolute;top:50%;left:0;border-radius:50%}.orbit-caption{position:absolute;bottom:50px;font-size:8px;letter-spacing:3px;color:#6886ba}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:65px}.steps article{border-top:1px solid #b7c5dc;padding-top:22px}.steps article>span{display:flex;justify-content:space-between;font-size:12px;color:var(--blue);margin-bottom:40px}.steps b{font-weight:400;font-size:20px}.steps h3{font-size:17px;letter-spacing:-.4px;font-weight:600}.steps p{font-size:12px;line-height:1.9;color:#617087}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#0b234c;color:white}.contact-copy h2{font-size:clamp(40px,4.6vw,65px);margin:30px 0}.contact-copy>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#b5c2d9}.email{display:inline-block;font-size:17px;margin-top:20px;border-bottom:1px solid #ffffff50;padding-bottom:9px}.enquiry{align-self:center}.enquiry h3{font-size:25px;font-weight:500;margin-bottom:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:10px;color:#c4cfe0;margin-bottom:24px}input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid #ffffff40;background:transparent;color:white;padding:13px 0;font-size:13px;border-radius:0;outline:none;resize:vertical}input:focus,textarea:focus,select:focus{border-color:#92b0ff}input::placeholder,textarea::placeholder{color:#8799b7}select option{background:#0b234c}.enquiry .button{width:100%;margin-top:5px}.form-note{font-size:10px;color:#a1b2ce;margin-top:12px}.form-status{font-size:12px;line-height:1.6;color:#c9d9ff}footer{padding:40px 7% 24px;background:#05142c;color:white;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}footer>p{color:#7e91af;font-size:12px;margin:0}footer>a:last-of-type{font-size:11px}.footer-bottom{display:flex;width:100%;justify-content:space-between;border-top:1px solid #ffffff15;margin-top:35px;padding-top:23px;color:#8192ad;font-size:9px}.js .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.js .reveal.visible{opacity:1;transform:none}.hero-copy>*{animation:body-in 1s ease both}.hero-copy h1{animation-delay:.15s}.hero-description{animation-delay:.3s}.hero-copy .button{animation-delay:.45s}@keyframes hero-in{from{transform:scale(1.06);opacity:.2}to{transform:scale(1);opacity:1}}@keyframes body-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes float{0%,100%{transform:rotateY(-16deg) rotateX(8deg) translateY(0)}50%{transform:rotateY(15deg) rotateX(-5deg) translateY(-20px)}}@keyframes orbit{from{transform:rotateX(60deg) rotateZ(0deg)}to{transform:rotateX(60deg) rotateZ(360deg)}}
@media(min-width:1600px){.hero-copy{padding-top:270px}.section{padding-left:max(7%,calc((100% - 1400px)/2));padding-right:max(7%,calc((100% - 1400px)/2))}}@media(max-width:900px){header{height:85px}nav{gap:20px}.hero{min-height:740px;max-height:950px}.hero-copy{padding-top:210px}h1{font-size:66px;letter-spacing:-3px}.hero-image{object-position:65% center}.section{padding:75px 6%}.about-layout{gap:7%}.section-label{margin-bottom:45px}.service-tag{display:none}.connection-copy{padding:65px 8% 65px 0}.connection-copy h2{font-size:35px}.steps{gap:20px;grid-template-columns:repeat(2,1fr)}.contact{gap:6%}.service-body{gap:20px}.hero-bottom>span:last-child{display:none}}
@media(max-width:620px){header{padding:0 6%;height:80px}.brand svg{width:40px}.brand>span{font-size:17px}.brand small{font-size:7px;letter-spacing:5.5px}.menu{display:block;background:none;border:0;color:white;font-size:12px}.menu span{margin-left:10px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#071b3df7;padding:25px 6%;flex-direction:column;align-items:stretch;gap:22px;border-bottom:1px solid #ffffff20}nav.open{display:flex}.nav-cta{display:flex;justify-content:space-between}.hero{height:850px;min-height:0;max-height:none}.hero-copy{padding:155px 6% 0}.hero-image{height:75%;top:25%;object-position:67% center}.hero-shade{background:linear-gradient(180deg,#041125 5%,#041125ed 25%,#04112540 60%,#04112577 80%,#041125 100%)}h1{font-size:54px;letter-spacing:-2.8px;margin:25px 0 20px}.hero-description{font-size:14px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero-index{display:none}.hero-bottom{left:6%;right:6%;font-size:7px;letter-spacing:1px;bottom:25px}.hero-bottom a{font-size:10px}.hero-bottom a span{margin-left:10px}.ticker{padding:14px 0;font-size:9px}.ticker b{margin:0 30px;font-size:18px}.section{padding:60px 6%}.section-label{font-size:8px;margin-bottom:35px;padding-bottom:20px}.section-label>span:last-child{display:none}.about-layout{grid-template-columns:1fr;gap:20px}h2{font-size:38px;letter-spacing:-1.8px}.about-text .large{font-size:19px}.about-text p{font-size:13px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;font-size:12px}.service summary{gap:17px;padding:24px 0}.service h3{font-size:19px;letter-spacing:-.5px}.plus{min-width:29px;width:29px;height:29px}.service-body{padding:0 0 25px 31px;grid-template-columns:1fr;gap:18px}.service-body p,.service-body ul{font-size:12px}.service-body a{font-size:11px}.connection{grid-template-columns:1fr}.orbital{min-height:360px}.logo-sculpture{width:50%}.orbit{height:85%;width:70%}.orbit-two{width:88%;height:100%}.orbit-caption{bottom:30px}.connection-copy{padding:10px 6% 55px}.connection-copy h2{font-size:38px}.steps{gap:30px 22px;margin-top:35px}.steps article>span{margin-bottom:25px}.steps h3{font-size:16px;line-height:1.5}.steps p{font-size:12px}.contact{grid-template-columns:1fr;gap:45px}.contact-copy h2{font-size:49px}.email{font-size:16px}.form-row{grid-template-columns:1fr;gap:0}.enquiry h3{font-size:23px}.footer-bottom{gap:16px;flex-direction:column;font-size:8px}footer{padding:35px 6% 25px}footer>p{display:none}footer .brand>span{font-size:15px}footer .brand svg{width:33px}footer .brand small{letter-spacing:4.7px;font-size:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
/* Sculpted cobalt controls and faithful Route mark. */
.brand svg{width:53px;height:32px}.brand{gap:14px}.button,.nav-cta{position:relative;isolation:isolate;overflow:hidden;border:1px solid #7ca1ff70;border-radius:12px;background:linear-gradient(165deg,#598bff 0%,#3269f1 32%,#2051d1 70%,#173d9e 100%);box-shadow:inset 0 1px 0 #d6e5ff80,inset 0 -2px 2px #08266e60,0 5px 0 #102e7c,0 10px 24px #00113e40;color:#fff;transition:transform .25s,box-shadow .25s,filter .25s;justify-content:center;min-height:54px;letter-spacing:.2px;padding:17px 28px;text-shadow:0 1px 2px #092b7855}.button:before,.nav-cta:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.55' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.button:after,.nav-cta:after{content:'';position:absolute;inset:-80% -40%;pointer-events:none;background:linear-gradient(110deg,transparent 38%,#ffffff38 49%,transparent 60%);transform:translateX(-65%);transition:transform .7s ease}.button:hover,.nav-cta:hover{background:linear-gradient(165deg,#6b99ff,#3974ff 35%,#2457de 75%,#1b43b0);color:white;transform:translateY(-2px);box-shadow:inset 0 1px 0 #e3efffa0,inset 0 -2px 2px #08266e60,0 7px 0 #102e7c,0 15px 30px #00113e55}.button:hover:after,.nav-cta:hover:after{transform:translateX(65%)}.button:active,.nav-cta:active{transform:translateY(4px);box-shadow:inset 0 2px 5px #102e7c70,0 1px 0 #102e7c,0 3px 10px #00113e30}.nav-cta{min-height:42px;padding:12px 22px;border-radius:10px;font-size:12px}.text-link{transition:color .25s,border-color .25s}.text-link:hover{color:var(--blue);border-color:var(--blue)}.steps b{display:none}.ticker b{color:#a9c3ff}.logo-sculpture{width:65%;filter:drop-shadow(0 25px 20px #0006);animation:route-sculpture 10s ease-in-out infinite;will-change:transform}.logo-sculpture svg{display:block;width:100%;height:auto}.orbital:after{content:'';position:absolute;bottom:19%;width:46%;height:6%;border-radius:50%;background:#0007;filter:blur(15px);animation:route-shadow 10s ease-in-out infinite}.orbit-one{animation-duration:30s}.orbit-two{animation-duration:40s}.hero-image{animation:hero-in 2s ease both,hero-drift 24s 2s ease-in-out infinite alternate}.service summary:hover h3{color:var(--blue)}
@keyframes route-sculpture{0%,100%{transform:translateY(0) rotateX(5deg) rotateY(-9deg) rotateZ(-2deg)}35%{transform:translateY(-18px) rotateX(-4deg) rotateY(13deg) rotateZ(1deg)}70%{transform:translateY(-6px) rotateX(7deg) rotateY(5deg) rotateZ(-1deg)}}@keyframes route-shadow{0%,100%{transform:scale(1);opacity:.7}35%{transform:scale(.83);opacity:.4}70%{transform:scale(.95);opacity:.6}}@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@media(max-width:620px){.brand svg{width:45px;height:27px}.brand{gap:11px}.nav-cta{align-self:flex-start;min-width:135px}.logo-sculpture{width:62%}.button{min-height:55px;padding:17px 25px}footer .brand svg{width:40px;height:25px}.orbital:after{bottom:17%}}
@media(prefers-reduced-motion:reduce){.logo-sculpture,.hero-image,.orbital:after{animation:none!important}.button:after,.nav-cta:after{display:none}}
