@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#102747;--blue:#175cde;--muted:#596b81;--line:#dde5ee;--pale:#f4f7fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);font:16px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #ffa800;outline-offset:5px}header{min-height:100px;padding:18px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:10px;font-family:Manrope,Arial,sans-serif;font-size:25px;font-weight:800;letter-spacing:2px;line-height:1.15}.brand-symbol{width:58px;height:58px;object-fit:contain;flex-shrink:0}.brand small{display:block;font-size:12px;font-weight:600;letter-spacing:4px;margin-top:6px}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a:hover{color:var(--blue)}.nav-cta{padding:13px 22px;border-radius:7px;background:var(--blue);color:white}.nav-cta:hover{background:#104ab8;color:white}nav .nav-cta span{margin-left:15px}.menu{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;color:white;background:#0e2342 url('office-team.png') center 48%/cover}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,46,.97),rgba(7,24,46,.74) 52%,rgba(7,24,46,.22));z-index:-1}.hero-content{padding:108px 6% 100px;max-width:1150px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 23px;color:var(--blue)}.hero .eyebrow{color:#c8ddff}.hero h1{font-size:clamp(46px,5.8vw,86px);line-height:1.11;letter-spacing:-3.7px;font-weight:600;margin:0;font-family:Manrope,Arial,sans-serif}em{font-style:normal;color:#74b9ff}.intro{font-size:19px;line-height:1.8;color:#d4e0ef;max-width:555px;margin:28px 0 33px}.hero-actions{display:flex;align-items:center;gap:30px}.button{padding:16px 24px;border-radius:7px;background:var(--blue);color:white;display:inline-flex;align-items:center;gap:25px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#104ab8;transform:translateY(-2px)}.text-link{font-size:15px;border-bottom:1px solid #a4b9d3;padding:8px 0}.hero-visual{display:none}.hero-foot{display:flex;align-items:center;justify-content:space-between;padding:22px 6%;border-top:1px solid #ffffff2b;gap:25px;background:#09203d70;backdrop-filter:blur(5px);font-size:12px;letter-spacing:1.3px;color:#d5e4f5}.hero-foot a{font-size:24px;color:white}.section{padding:90px 6%}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:44px}h2,h3{font-family:Manrope,Arial,sans-serif;margin:0;font-weight:600}h2{font-size:clamp(34px,3.6vw,52px);line-height:1.2;letter-spacing:-2px}.section-heading>p{max-width:390px;color:var(--muted);margin:0}.expertise{background:var(--pale)}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service{position:relative;padding:32px;border:1px solid #e2e9f2;border-radius:12px;background:white;min-width:0;transition:transform .2s,box-shadow .2s,border-color .2s}.service:hover{transform:translateY(-5px);box-shadow:0 14px 35px #132c4910;border-color:#a9c7ed}.service h3{font-size:23px;letter-spacing:-.7px;line-height:1.3}.service p{font-size:16px;color:var(--muted);margin:16px 0 0}.service-link{display:inline-block;font-size:14px;color:var(--blue);font-weight:600;margin-top:18px}.ai-section{background:#fff}.ai-section .section-heading h2{font-size:clamp(32px,3vw,44px)}.ai-section em,.about em{color:var(--blue)}.ai-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.ai-grid article{border-top:3px solid #d5e6ff;padding-top:24px}.ai-grid h3{font-size:20px;letter-spacing:-.5px;line-height:1.4}.ai-grid p{color:var(--muted);margin-bottom:0}.ai-grid a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.ai-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:25px;margin-top:40px}.ai-bottom p{color:var(--muted)}.ai-bottom small{font-size:12px}.about{background:#102747;color:white;display:grid;grid-template-columns:1fr 1.05fr;gap:10%}.about .eyebrow{color:#9bc8ff}.about em{color:#85bbff}.about-copy p{color:#c8d6e8;margin:0 0 23px}.about-copy .large{font-size:23px;line-height:1.65;color:#fff}.about-bottom{display:flex;gap:40px;border-top:1px solid #ffffff33;padding-top:28px;margin-top:33px;font-size:13px;letter-spacing:1px}.about-bottom small{display:block;font-size:13px;letter-spacing:0;color:#c8d6e8;margin-top:6px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.steps article{border-top:1px solid var(--line);padding-top:26px}.steps span{font-size:40px;font-weight:500;color:#a8c6eb}.steps h3{font-size:25px;letter-spacing:-.6px;margin-top:16px}.steps p{color:var(--muted)}.contact{margin:0 4% 50px;padding:65px 4%;border-radius:16px;background:#edf4ff;display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.contact h2{font-size:clamp(32px,3.5vw,49px)}.contact p{color:var(--muted)}.contact-details{align-self:center;padding-left:45px;border-left:1px solid #c7d9ee;min-width:0}.contact-details h3{font-size:20px;line-height:1.4;margin-bottom:18px}.contact address{font-style:normal;color:var(--muted)}.domain{display:block;color:var(--blue);margin-top:24px;font-size:14px}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:28px}.contact-links a{color:var(--blue);font-size:clamp(16px,1.8vw,24px);font-weight:500;overflow-wrap:anywhere;max-width:100%}.contact-links a:hover{text-decoration:underline;text-underline-offset:5px}.contact-links span{margin-left:8px}footer{padding:38px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px}footer .brand{font-size:20px}footer .brand-symbol{width:46px;height:46px}footer .brand small{font-size:10px;letter-spacing:3px}footer p,footer>div,.back-top{font-size:12px;color:var(--muted)}footer>div{display:grid}.back-top{white-space:nowrap}
@media(min-width:1600px){.section,header,footer{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}.hero-content{padding-left:max(6%,calc((100vw - 1400px)/2));max-width:none}}
@media(max-width:1050px){header{padding-left:4%;padding-right:4%}nav{gap:18px;font-size:13px}.brand{font-size:22px}.brand-symbol{width:49px;height:49px}.services{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact{gap:35px}.contact-details{padding-left:28px}footer{flex-wrap:wrap}}
@media(max-width:760px){html{scroll-padding-top:80px}header{min-height:82px;padding:14px 5%}.brand{font-size:21px;letter-spacing:1.4px}.brand small{font-size:10px;letter-spacing:3px}.brand-symbol{width:43px;height:43px}.menu{display:flex;align-items:center;gap:8px;font-size:14px;background:white;border:1px solid var(--line);border-radius:6px;padding:8px 10px}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 5%;background:white;box-shadow:0 12px 15px #0d234620;font-size:15px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.hero-content{padding:70px 6% 62px}.hero h1{font-size:clamp(38px,7.8vw,58px);letter-spacing:-1.7px}.hero:before{background:linear-gradient(90deg,#07182eef,#07182e8f)}.intro{font-size:17px;max-width:470px}.hero .eyebrow{font-size:11px;letter-spacing:1.3px}.hero-actions{gap:22px}.button{font-size:14px;padding:14px 18px;gap:18px}.hero-foot{font-size:11px;letter-spacing:.5px}.hero-foot span:nth-child(2){display:none}.section{padding:60px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.about,.steps,.contact{grid-template-columns:1fr;gap:30px}.about-copy .large{font-size:21px}.ai-bottom{flex-direction:column;align-items:flex-start}.contact{margin:0 4% 30px;padding:40px 6%}.contact-details{border-left:0;border-top:1px solid #c7d9ee;padding:27px 0 0}.desktop{display:none}footer{padding:30px 6%;gap:22px}footer .brand{width:100%}footer p{width:100%;margin:0}.back-top{margin-left:auto}}
@media(max-width:500px){.services,.ai-grid{grid-template-columns:1fr}.service{padding:27px}.service h3{font-size:23px}.hero h1{font-size:38px}.hero-actions{gap:18px}.text-link{font-size:14px}.about-bottom{gap:22px}.brand{font-size:18px}.brand small{font-size:10px;letter-spacing:2px}.brand-symbol{width:40px;height:40px}.hero-content{padding-top:60px}h2{font-size:34px;letter-spacing:-1.2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Footer navigation and company introduction */
.contact.contact-simple{display:block}.contact-simple>div{max-width:800px}
footer.site-footer{display:block;padding:0;background:#f5f7f9;border-top:1px solid var(--line)}
.site-footer .footer-main{display:grid;grid-template-columns:1fr .7fr 1.3fr;gap:64px;max-width:1440px;margin:0 auto;padding:72px 6% 52px;font-size:16px;color:var(--ink)}
.site-footer h2{font-size:24px;line-height:1.3;letter-spacing:-.6px;margin:0 0 27px;font-weight:700}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.site-footer li a{font-size:16px;line-height:1.6;color:#34475d}
.site-footer a:hover{color:var(--blue)}
.site-footer .brand{width:auto;font-size:22px;gap:12px;margin:0 0 24px}.site-footer .brand-symbol{width:50px;height:50px}.site-footer .brand small{font-size:11px;letter-spacing:3px}
.site-footer .footer-about p{font-size:16px;line-height:1.85;color:var(--muted);margin:0 0 17px;width:auto}
.site-footer .footer-email{display:inline-block;font-size:16px;color:var(--blue);overflow-wrap:anywhere;margin-top:4px}

.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 6%;background:#102747;color:#e3ebf5;font-size:14px}
.site-footer .footer-bottom p{font-size:14px;color:inherit;margin:0;width:auto}.site-footer .footer-bottom a{font-size:14px;white-space:nowrap}.site-footer .footer-bottom a:hover{color:#96c9ff}
@media(max-width:900px){.site-footer .footer-main{gap:36px;grid-template-columns:1fr 1fr}.site-footer .footer-about{grid-column:1/-1;max-width:650px}}
@media(max-width:600px){.site-footer .footer-main{grid-template-columns:1fr;gap:42px;padding:48px 7% 36px}.site-footer .footer-about{grid-column:auto}.site-footer h2{font-size:23px;margin-bottom:22px}.site-footer ul{gap:14px}.site-footer .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px;padding:24px 7%}}

/* Use the supplied original logo, framed around its symbol. */
.brand .original-symbol{display:block;position:relative;overflow:hidden;mix-blend-mode:multiply}
.original-symbol img{position:absolute;width:228%;height:auto;max-width:none;left:-64%;top:-28%;display:block}
.site-footer .footer-about .brand-caption{font-size:14px;letter-spacing:1px;font-weight:600;color:var(--ink);margin-top:-8px;margin-bottom:24px}.brand-caption span{color:#00a9d1;padding:0 3px}

.hero-content{padding-top:80px;padding-bottom:76px;max-width:1000px}.hero h1{font-size:clamp(44px,5.3vw,76px);line-height:1.12;letter-spacing:-2.5px}.hero h1 .welcome-line{font-size:.53em;letter-spacing:.02em;font-weight:500}.hero-tagline{font-size:16px;letter-spacing:2px;color:#c4e4ff;margin:24px 0 0}.hero .intro{margin-top:18px}.hero:before{background:linear-gradient(90deg,rgba(7,24,46,.94),rgba(7,24,46,.75) 43%,rgba(7,24,46,.16))}
.about-office{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin-top:32px;border-radius:10px}
.social-links{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:28px}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1.5px solid #102747;border-radius:50%;color:#102747;transition:background .2s,color .2s}.social-links svg{width:22px;height:22px;fill:currentColor}.site-footer .social-links a:hover{color:white;background:#175cde;border-color:#175cde}
@media(max-width:760px){.hero-content{padding-top:60px;padding-bottom:62px}.hero h1{font-size:clamp(40px,9vw,64px);letter-spacing:-1.5px}.hero-tagline{font-size:14px;letter-spacing:1px}.hero{background-position:62% center}.hero:before{background:linear-gradient(90deg,rgba(7,24,46,.89),rgba(7,24,46,.5))}.about-office{max-height:350px}}
