:root{color-scheme:light;--ink:#101113;--muted:#5c6066;--line:#d8dadd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #447dec;outline-offset:5px}.skip{position:absolute;left:16px;top:-80px;z-index:10;background:white;padding:12px}.skip:focus{top:12px}header{padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:white}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:26px;font-weight:700;line-height:1.2;letter-spacing:-1px}.brand img{width:57px;height:60px;object-fit:cover;border-radius:50%}.brand b,.footer-brand b{font-weight:400}.brand small{display:block;font-size:12px;letter-spacing:.15px;font-weight:400;margin-top:6px}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav a{text-decoration:none}nav .nav-contact{border:1px solid var(--ink);padding:10px 20px}.hero{background:#0b0c0e;color:white;position:relative;overflow:hidden;padding:76px 7% 0}.mesh{position:absolute;right:-60px;top:0;width:65%;height:100%;color:#818994;opacity:.28;pointer-events:none}.mesh svg{width:100%;height:100%;stroke-width:.6}.hero-copy{position:relative;max-width:660px}.eyebrow{font-size:13px;letter-spacing:2px;font-weight:700;margin:0 0 24px}h1{font-size:clamp(64px,8vw,112px);letter-spacing:-5px;line-height:.97;margin:0 0 34px;font-weight:600}h1 span{color:#adb4bd}.intro{font-size:26px;line-height:1.35;margin:0 0 22px}.hero-description{max-width:460px;color:#c0c5cc;margin:0}.actions{display:flex;align-items:center;gap:28px;margin:34px 0 62px}.button{display:inline-block;padding:15px 25px;text-decoration:none;font-size:15px;font-weight:700;line-height:1.4;text-align:center;transition:background .2s}.light{background:white;color:#111}.light:hover{background:#dce2e9}.dark{background:#111;color:white}.dark:hover{background:#353a43}.text-link{font-size:14px}.hero-bottom{position:relative;display:flex;justify-content:space-between;gap:24px;border-top:1px solid #35383d;padding:22px 0;color:#aeb5be;font-size:14px}.section{padding:88px 7%}h2{font-size:clamp(34px,4vw,54px);line-height:1.1;letter-spacing:-2px;font-weight:500;margin:0 0 28px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:390px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}article{padding:28px 22px 32px 0;display:flex;flex-direction:column}article+article{padding-left:22px;border-left:1px solid var(--line)}.number{font-size:14px;color:var(--muted)}h3{font-size:23px;line-height:1.25;font-weight:500;letter-spacing:-.7px;margin:22px 0 16px}article h3{min-height:58px}article p{color:var(--muted);margin:0 0 20px}article ul{list-style:none;margin:0 0 30px;padding:0;font-size:14px}article li{padding:7px 0;border-bottom:1px solid #eee}article a{margin-top:auto;font-size:14px}.service-strip{display:block;width:100%;height:auto;filter:grayscale(1);margin-top:12px}.about{background:#f0f1f2;display:grid;grid-template-columns:1fr 1fr;gap:9%}.large-copy{font-size:22px;max-width:380px;line-height:1.5}.about-copy>p{margin:0 0 22px;color:#454b53}.credentials{margin-top:36px;border-top:1px solid #c5c9cd}.credentials>div{padding:16px 0;border-bottom:1px solid #c5c9cd}.credentials strong,.credentials span{display:block;font-size:14px}.credentials span{color:var(--muted);margin-top:3px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:44px}.steps span{display:block;font-size:14px;border-bottom:1px solid #aaa;padding-bottom:14px}.steps p{color:var(--muted)}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;background:#e4e7eb}.contact>div>p:not(.eyebrow){max-width:410px;color:#50565e}.contact-panel{background:white;padding:38px}.contact-panel h3{margin:0 0 16px;font-size:28px}.contact-panel p{margin-bottom:25px}.email{display:block;margin:16px 0;font-size:15px;overflow-wrap:anywhere}.general{border-top:1px solid var(--line);margin-top:28px;padding-top:22px;font-size:14px}.general span,.general a{display:block;overflow-wrap:anywhere}.general span{color:var(--muted);margin-bottom:6px}footer{padding:46px 7% 24px;background:#0b0c0e;color:white}.footer-brand{font-size:30px;font-weight:700;letter-spacing:-1px;line-height:1.3}.footer-brand small{display:block;font-size:13px;letter-spacing:0;font-weight:400}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid #35383d;margin-top:35px;padding-top:20px;font-size:13px;color:#adb4bd}footer>p{font-size:14px;letter-spacing:1px}@media(min-width:1600px){.section,.hero,footer{padding-left:max(7%,calc((100% - 1380px)/2));padding-right:max(7%,calc((100% - 1380px)/2))}}@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,1fr)}article:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}article:nth-child(4){border-top:1px solid var(--line)}.about,.contact{gap:5%}.brand{font-size:23px}nav{gap:20px}}@media(max-width:650px){header{padding:16px 5%;flex-wrap:wrap;gap:16px}.brand{font-size:25px}nav{width:100%;justify-content:space-between;font-size:14px}nav .nav-contact{padding:8px 15px}.hero{padding:54px 6% 0}h1{letter-spacing:-3px;font-size:76px}.intro{font-size:23px}.mesh{width:110%;right:-50%;opacity:.2}.actions{gap:20px;flex-wrap:wrap;margin-bottom:42px}.hero-bottom{flex-direction:column;gap:5px}.section{padding:55px 6%}.section-heading{display:block}.section-heading>p{margin-top:24px}.service-grid{grid-template-columns:1fr}article,article+article,article:nth-child(3){border-left:0;padding:25px 0;border-top:1px solid var(--line)}article:first-child{border-top:0}article h3{min-height:0;margin-top:14px}article ul{font-size:16px;margin-bottom:24px}article a{font-size:15px}.service-strip{min-height:90px;object-fit:cover}.about,.contact{grid-template-columns:1fr;gap:26px}.steps{grid-template-columns:1fr;gap:24px;margin-top:30px}.steps h3{margin-top:16px}.contact-panel{padding:26px}.contact h2{font-size:38px}.footer-bottom{flex-direction:column;gap:8px}footer{padding:36px 6% 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Supplied company artwork stays fully visible at every screen size. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero{background:#fff;color:var(--ink);padding:0}
.heading-banner{display:block;width:100%;height:auto;object-fit:contain}
.hero-details{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:32px 7%}
.hero-details .eyebrow{margin-bottom:12px}
.hero-details .intro{font-size:24px;margin-bottom:12px}
.hero-details .hero-description{color:var(--muted);max-width:660px}
.hero-details .actions{margin:0;flex-shrink:0;flex-direction:column;gap:16px}
.hero-bottom{color:var(--muted);border-color:var(--line);margin:0 7%}
@media(min-width:1600px){.hero{padding:0}.heading-banner{max-width:1536px;margin:auto}.hero-details{max-width:1536px;margin:auto}}
@media(max-width:800px){.hero-details{align-items:flex-start;flex-direction:column;padding:26px 6%;gap:22px}.hero-details .actions{flex-direction:row;flex-wrap:wrap;gap:20px}.hero-bottom{margin:0 6%}.hero-details .intro{font-size:22px}}
/* Electric blue technology direction. */
:root{color-scheme:dark;--ink:#f3f8ff;--muted:#afbdd0;--line:#26374e;--blue:#3b9dff;--cyan:#79edff}
body{background:#070c15;color:var(--ink)}
.hero{background:#070c15;color:var(--ink)}
.heading-banner{max-width:1400px;margin:0 auto}
.hero-details{background:radial-gradient(ellipse at 90% 0, #12355e80, transparent 65%);padding-top:38px;padding-bottom:38px}
.eyebrow{color:var(--cyan);font-size:14px;letter-spacing:2.5px}
.hero-details .intro{font-size:clamp(24px,3vw,38px);font-weight:600;line-height:1.2;max-width:680px}
.hero-description,.hero-details .hero-description{color:var(--muted)}
.hero-bottom{border-color:var(--line);color:var(--muted)}
.site-nav{position:sticky;top:0;z-index:5;background:#0b1322f2;backdrop-filter:blur(18px);justify-content:center;gap:48px;padding:14px 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:100%}
.site-nav a{font-size:15px;color:#e3efff;padding:8px 0}
.site-nav a:hover{color:var(--cyan)}
.site-nav .nav-contact{border:1px solid #3b9dff80;background:#14325a66;padding:9px 20px;border-radius:6px}
.button.dark,.button.light{color:#03101e;background:linear-gradient(110deg,#69e5ff,#3898ff);border:1px solid #91eaff;border-radius:6px;box-shadow:0 0 30px #148cff25;font-size:16px}
.button:hover{background:#a4f1ff;box-shadow:0 0 36px #21a6ff55;transform:translateY(-2px)}
.button{transition:transform .25s,box-shadow .25s,background .25s}
.text-link{color:#e1efff;font-size:15px}
.services{background:radial-gradient(ellipse at 0 40%,#142c4744,transparent 60%)}
h2{font-weight:600;letter-spacing:-1.5px;color:#f2f7ff}
.service-grid{border:0;gap:18px}
article,article+article{padding:28px 24px 30px;border:1px solid #284262;border-radius:12px;background:linear-gradient(155deg,#122138,#0b1320);position:relative;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
article:before{content:"";position:absolute;left:24px;right:24px;top:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--blue),transparent)}
article:hover{transform:translateY(-6px);border-color:#50b9ff;box-shadow:0 14px 40px #0006,0 0 30px #298fff15}
.number{color:var(--cyan);font-weight:700;font-size:15px}h3{color:#eff7ff;font-weight:600;font-size:23px}
article ul{font-size:15px}article li{border-color:#24344b}article a{color:#8ee8ff;font-size:15px}article p{color:var(--muted)}
.service-strip{filter:none;border-radius:10px;border:1px solid var(--line);margin-top:30px}
.about{background:linear-gradient(115deg,#101c2d,#09101c);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-copy>p,.large-copy,.steps p{color:var(--muted)}
.credentials,.credentials>div{border-color:var(--line)}.credentials strong,.credentials span{font-size:15px}.credentials strong{color:#eaf5ff}
.steps{gap:28px}.steps>div{border-top:2px solid #2499ff;background:linear-gradient(180deg,#152b463d,transparent);padding:20px 22px}.steps span{color:var(--cyan);border:0;font-size:16px}
.contact{background:radial-gradient(ellipse at top left,#173e69,#0a1423 70%);border-top:1px solid #295279}
.contact>div>p:not(.eyebrow){color:var(--muted)}
.contact-panel{background:#0c182bee;border:1px solid #356590;border-radius:12px;box-shadow:0 0 60px #1586ff15}
.email,.general a{color:#9feeff}.general{border-color:var(--line)}
footer{background:#050a12;border-top:1px solid var(--line)}footer>p{color:var(--cyan)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s,transform .65s}.revealed{opacity:1;transform:none}
@media(max-width:1000px){article:nth-child(3),article:nth-child(4){border:1px solid #284262;padding:28px 24px}}
@media(max-width:650px){.site-nav{gap:0;justify-content:space-between;padding:10px 6%}.site-nav .nav-contact{padding:8px 12px}.hero-details{padding-top:28px}.service-grid{gap:16px}article,article+article,article:nth-child(3),article:first-child{padding:26px 22px;border:1px solid #284262}.service-strip{min-height:0;object-fit:contain}.steps{gap:18px}.hero-bottom{font-size:14px}.contact-panel{padding:26px}.hero-details .actions{gap:18px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.button:hover,article:hover{transform:none}}

.phone-link{font-size:18px;font-weight:700;color:#9feeff;text-decoration:none;white-space:nowrap}.contact-phone{display:block;font-size:clamp(26px,3vw,38px);line-height:1.3;font-weight:700;color:#9feeff;text-decoration:none;margin:0 0 14px}.contact-area{color:var(--muted);margin:0 0 22px}.site-nav .nav-phone{color:#9feeff;font-weight:700;white-space:nowrap}@media(max-width:650px){.site-nav{gap:10px;flex-wrap:wrap}.site-nav .nav-phone{flex-basis:100%;text-align:center;padding:4px 0}.hero-details .actions{align-items:flex-start}.phone-link{flex-basis:100%}}

/* Keep contact actions within reach on phones. */
.mobile-contact-bar{display:none}
@media(max-width:650px){
.mobile-contact-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:8;width:100%;padding:12px 6% calc(12px + env(safe-area-inset-bottom,0px));background:#0b1322f5;backdrop-filter:blur(18px);border-top:1px solid #356590}
.mobile-contact-bar .button{display:flex;align-items:center;justify-content:center;white-space:normal;min-height:48px;padding:12px 10px}
.mobile-contact-bar .quote-shortcut{background:#14325a;color:#e3efff;border:1px solid #3b9dff80;border-radius:6px}
.mobile-contact-bar .quote-shortcut:hover{background:#234a78}
footer{padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))}
}

footer .legal-details{font-size:14px;letter-spacing:0;color:var(--muted);line-height:1.7}

/* Crop the artwork's printed frame and let the opening span the page. */
.opening-artwork{position:relative;width:100%;aspect-ratio:1561 / 1007;overflow:hidden;background:#070c15}
.opening-artwork .heading-banner{position:absolute;display:block;width:108.7%;max-width:none;height:108.7%;left:-4.35%;top:-4.35%;margin:0;object-fit:fill;border:0;border-radius:0}
