@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 700;font-display:swap;src:url('../fonts/open-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 700;font-display:swap;src:url('../fonts/open-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--blue:#075f92;--mid-blue:#3381b4;--dark:#282c2d;--paper:#fcfdf9;--m365:#b6cdd9;--sharepoint:#87adc3;--security:#d5d9d6;--peach:#f8d8ca;--orange:#b5471a;--gutter:40px}
*{box-sizing:border-box}body{margin:0;color:var(--dark);background:var(--paper);font-family:'Open Sans',Arial,sans-serif;font-size:20px;line-height:1.5}img{max-width:100%;height:auto}a{color:var(--blue);text-underline-offset:.2em}a:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.footer a:focus-visible{outline-color:white}p{margin:0 0 1.2em}p:last-child{margin-bottom:0}h1,h2,h3{margin:0;line-height:1.16}h2{font-size:clamp(38px,4.4vw,64px);font-weight:700}ul{padding-left:1.6em;margin:0 0 1.6em}li{padding-left:.1em;margin-bottom:.35em}.container{width:min(100% - 2 * var(--gutter),1200px);margin-inline:auto}.section{padding-block:56px}.accent{color:var(--orange)}
.hero{position:relative;isolation:isolate;overflow:hidden;background:#edf6fa;min-height:650px;display:grid;align-items:center;padding:30px 0 60px}.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.hero-content{text-align:center}.hero-logo{display:block;width:430px;margin:-35px auto -24px}.hero h1{font-size:clamp(26px,3.65vw,54px);font-weight:300;line-height:1.4}.hero h1 span{display:block}.navigation{padding-block:14px;background:var(--paper)}.nav-inner{display:flex;align-items:center;gap:38px;padding-inline:120px 10px}.navigation a{font-size:23px;font-weight:700;display:inline-flex;min-height:44px;align-items:center}.blog-link{margin-left:auto;text-decoration:none}.intro{background:var(--mid-blue);color:white;text-align:center;padding-block:56px}.intro p{font-size:clamp(28px,2.75vw,40px);line-height:1.45;font-weight:300}
.heading-with-art{display:flex;align-items:center;gap:28px;margin-bottom:28px;min-width:0}.heading-art{width:120px;height:120px;object-fit:contain;flex:none}.gears{position:relative;width:160px;height:130px;flex:none}.gear{position:absolute;width:82px;height:82px;object-fit:contain}.gear-one{left:0;top:6px}.gear-two{right:0;top:0}.gear-three{left:45px;bottom:-12px}.overview-grid{display:grid;grid-template-columns:1fr 2fr;gap:65px;align-items:center}.service-tiles{display:grid;grid-template-columns:1fr 1fr;gap:24px}.tile{display:flex;justify-content:center;align-items:center;min-height:128px;padding:24px 20px;text-align:center;text-decoration:none;font-size:28px;font-weight:700;line-height:1.5;color:var(--dark)}.tile:hover{box-shadow:inset 0 0 0 3px var(--blue)}.m365{background:var(--m365)}.sharepoint{background:var(--sharepoint)}.security{background:var(--security)}.training{background:var(--peach)}
.service{border-top:6px solid var(--paper)}.service-heading{display:flex;align-items:center;gap:22px;margin-bottom:38px}.service-heading h2{font-weight:300;overflow-wrap:break-word}.service-icon{width:58px;height:58px;object-fit:contain;flex:none}.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px}.list-title{font-size:23px;font-weight:700;margin-bottom:12px;line-height:1.4}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;max-width:100%;padding:15px 24px;background:var(--blue);color:white;font-size:18px;font-weight:700;text-decoration:none;text-align:center;line-height:1.4}.button:hover{background:#054b73}.button:focus-visible{outline-color:var(--dark)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.contact-strip h2{font-size:32px;font-weight:400;line-height:1.4;margin-bottom:12px}.contact-links{display:grid;gap:22px}.contact-links a{display:flex;align-items:center;gap:22px;font-size:30px;font-weight:600;text-decoration:none;min-width:0}.contact-links span{overflow-wrap:anywhere}.contact-icon{width:70px;height:70px;object-fit:contain;flex:none}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-bottom:50px}.section-intro .heading-with-art{margin-bottom:0}.reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px 40px}.reference-card{min-width:0}.reference-card>img{width:100%;aspect-ratio:2.5;object-fit:cover;border-radius:28px;display:block;margin-bottom:18px}.reference-card h3{color:#9c3c15;font-size:18px;font-weight:700;line-height:1.4;margin-bottom:16px}.reference-card p{font-size:18px;line-height:1.55;margin-bottom:1em}.reference-card p:last-child{margin-bottom:0}
.blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.blog .heading-with-art{align-items:flex-start;gap:16px}.blog .heading-art{width:100px;height:100px}.blog-visual{text-align:center}.blog-visual>img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:39% 61% 54% 46% / 47% 39% 61% 53%;margin-bottom:24px}.footer{color:var(--paper);background:var(--dark)}.footer a{color:var(--paper)}.footer-grid a{display:inline-flex;align-items:center;min-height:44px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start}.footer-logo{width:290px}.footer-grid p{font-size:18px;overflow-wrap:anywhere}.footer .section-intro h2{color:var(--paper)}
.reference-card>img[src*="reference-energy"]{object-position:50% 65%}.reference-card>img[src*="finance-healthcheck"],.reference-card>img[src*="manufacturing"],.reference-card>img[src*="reference-it"]{object-position:50% 20%}.contact-icon{border-radius:50%}
@media(min-width:1024px) and (prefers-reduced-motion:no-preference){.hero-background{animation:wave-drift 36s ease-in-out infinite alternate}.gear{animation:gear-spin 60s linear infinite}.gear-two{animation-direction:reverse;animation-duration:72s}.gear-three{animation-duration:52s}@keyframes wave-drift{from{transform:scale(1)}to{transform:scale(1.05) translateX(1%)}}@keyframes gear-spin{to{transform:rotate(360deg)}}}
@media(max-width:1023px){:root{--gutter:28px}.section{padding-block:44px}.hero{min-height:520px}.hero-logo{width:340px}.nav-inner{padding:0;gap:28px}.overview-grid,.service-columns,.contact-grid,.blog-grid,.section-intro{grid-template-columns:1fr;gap:30px}.footer-grid{grid-template-columns:1fr;gap:28px}.overview-grid{align-items:start}.service-tiles{max-width:800px}.service-columns{gap:24px}.section-intro{margin-bottom:36px}.reference-grid{gap:38px 28px}.blog-visual{max-width:540px;margin-inline:auto}.footer-logo{width:240px}.service-heading{margin-bottom:26px}.contact-links{max-width:100%}}
@media(max-width:767px){.reference-grid{grid-template-columns:1fr}.reference-card p{font-size:18px}}
@media(max-width:599px){:root{--gutter:22px}body{font-size:18px}.section{padding-block:36px}.hero{min-height:360px;padding:16px 0 34px}.hero-logo{width:220px;margin:-12px auto -10px}.hero h1{font-size:clamp(20px,5.5vw,26px);line-height:1.45}.navigation{padding-block:10px}.nav-inner{gap:6px 22px;flex-wrap:wrap;justify-content:center}.navigation a{font-size:18px}.blog-link{margin-left:0}.intro{padding-block:34px}.intro p{font-size:28px}.service-tiles{grid-template-columns:1fr;gap:16px}.tile{font-size:25px;min-height:104px}.heading-with-art{gap:14px;flex-wrap:wrap}.heading-art{width:80px;height:80px}.gears{width:120px;height:92px}.gear{width:60px;height:60px}.gear-three{left:35px;bottom:-10px}.service-heading{display:block}.service-icon{margin-bottom:12px}.service-heading h2{font-size:clamp(36px,9.6vw,48px)}.list-title{font-size:20px}.button{font-size:16px;padding-inline:18px;width:100%}.contact-strip h2{font-size:28px}.contact-links a{font-size:clamp(22px,5.6vw,28px);gap:14px}.contact-icon{width:52px;height:52px}.reference-card>img{border-radius:20px}.reference-card h3{font-size:17px}.blog .heading-art{width:80px;height:80px}.footer .section-intro{gap:24px}.footer-logo{width:210px}}
