:root,.dark{--background:#10191e;--foreground:#f7fafb;--card:#18242b;--card-foreground:#f7fafb;--popover:#18242b;--popover-foreground:#fff;--primary:#04acd0;--primary-foreground:#07191f;--secondary:#23333d;--secondary-foreground:#fff;--muted:#23333d;--muted-foreground:#b5c4cc;--accent:#04acd0;--accent-foreground:#07191f;--destructive:#ef6060;--border:#35434b;--input:#35434b;--ring:#04acd0;--radius:.25rem;--font-sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #03add2;outline-offset:6px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600}p{line-height:1.65}svg{flex-shrink:0}.skip-link{position:absolute;left:20px;top:-100px;z-index:10;background:white;color:#10191e;padding:15px}.skip-link:focus{top:15px}.site-header{max-width:1600px;margin:auto;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:108px}.brand{display:block;width:300px;flex-shrink:0}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:36px;font-size:14px}.site-header nav a:hover{color:#3bcee9}.nav-contact{display:flex;align-items:center;gap:20px;padding:13px 18px;border:1px solid #55616a}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:630px}.hero-copy{padding:50px 9% 50px 10%}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;display:flex;align-items:center;gap:10px}.eyebrow span{width:6px;height:6px;border-radius:50%;background:#04acd0}.hero h1{font-size:clamp(3.7rem,5.8vw,6rem);line-height:1.02;letter-spacing:-.055em;margin:32px 0 24px}.hero h1 span,.integration h2 span{color:#04acd0}.hero-intro{font-size:19px;color:#c6d0d5;line-height:1.55}.button{display:inline-flex;align-items:center;gap:24px;background:#04acd0;color:#07191f;padding:18px 22px;font-size:15px;font-weight:700;margin-top:28px;transition:background .2s}.button:hover{background:#55d9ed}.hero-foot{color:#a0b0b8;font-size:13px;margin-top:30px}.hero-photo{position:relative;min-height:100%;overflow:hidden}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:53% 50%}.hero-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(4,15,22,.85))}.photo-label{position:absolute;bottom:32px;left:32px;right:24px;z-index:1;display:flex;flex-direction:column;gap:7px;font-size:14px}.photo-label span:first-child{font-size:12px;font-weight:700;letter-spacing:.15em;color:#5de0f5}.service-strip{background:#03a8cb;color:#05212a;display:flex;align-items:center;gap:45px;padding:24px 5%;font-size:14px;font-weight:700;letter-spacing:.12em}.strip-note{margin-left:auto;font-weight:400;letter-spacing:0}.section{padding:88px max(5%,calc((100vw - 1440px)/2));}.services,.beyond{background:#f5f7f8;color:#14232b}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:46px}.section-heading>.section-heading{margin:0}.section-heading>p{max-width:410px;color:#51616b;font-size:17px}h2{font-size:clamp(2.2rem,3.5vw,3.8rem);line-height:1.12;letter-spacing:-.045em}.section-heading .eyebrow{color:#007b98;margin-bottom:20px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c9d2d7;border-bottom:1px solid #c9d2d7}.service{padding:30px 30px 30px 0;display:flex;flex-direction:column}.service+.service{border-left:1px solid #c9d2d7;padding-left:30px}.service-top{display:flex;align-items:center;justify-content:space-between;color:#007e99;margin-bottom:38px}.service-top span{color:#6d7a82;font-size:13px}.service h3{font-size:28px;letter-spacing:-.025em;margin-bottom:15px}.service>p{color:#51616b;font-size:16px;margin-bottom:30px}.service-detail{font-size:13px;margin-top:auto;color:#344c59;line-height:1.6}.integration{display:grid;grid-template-columns:1fr 1fr;gap:9%}.integration .eyebrow{color:#78d8ec;margin-bottom:24px}.integration-intro>p:not(.eyebrow){font-size:17px;color:#bac7ce;max-width:520px;margin-top:28px}.text-link{display:inline-flex;gap:20px;align-items:center;padding-bottom:9px;margin-top:30px;border-bottom:1px solid #52626b;font-size:15px}.text-link:hover{color:#48d4ef}.integration-list{padding-top:8px}.integration-list article{display:flex;gap:24px;padding:26px 0;border-top:1px solid #3a4b54}.integration-list article>span{color:#04acd0;font-size:13px;padding-top:4px}.integration-list h3{font-size:20px;margin-bottom:10px}.integration-list p{font-size:16px;color:#aebec7}.beyond-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.beyond-grid article{border-top:2px solid #008daa;padding-top:26px}.beyond-grid svg{color:#007f9a;margin-bottom:25px}.beyond-grid h3{font-size:23px;margin-bottom:12px}.beyond-grid p{color:#51616b;font-size:16px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#073542}.contact .eyebrow{color:#68d7ed;margin-bottom:24px}.contact h2{font-size:clamp(2rem,3.4vw,3.5rem)}.contact>div>p:not(.eyebrow){color:#c1d3d9;margin-top:24px;font-size:17px}.contact-links>a{display:block;border-bottom:1px solid #4b6c75;padding:24px 35px 25px 0;position:relative}.contact-links>a:first-child{padding-top:0}.contact-links>a>span{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.1em;color:#a5c5cf;margin-bottom:15px}.contact-links strong{font-size:clamp(1.15rem,2vw,1.8rem);font-weight:500;overflow-wrap:anywhere}.contact-arrow{position:absolute;right:0;bottom:31px;color:#4ed5ed}.contact-links>a:hover strong{color:#4ed5ed}.contact-links>p{font-size:14px!important}footer{display:flex;justify-content:space-between;gap:24px;padding:28px 5%;font-size:13px;color:#a9b9c2}footer a{display:flex;gap:12px;align-items:center}footer a svg{transform:rotate(-90deg)}
@media(min-width:1600px){.hero-photo{min-height:690px}.service-strip{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}
@media(max-width:900px){.site-header nav{gap:20px}.hero{min-height:560px}.hero-copy{padding-top:38px;padding-bottom:38px}.hero h1{font-size:clamp(3.2rem,6vw,5rem)}.hero .eyebrow{font-size:10px;letter-spacing:.08em}.hero-intro{font-size:17px}.button{font-size:14px;gap:14px;padding:16px}.service-strip{gap:25px}.strip-note{font-size:12px}.section{padding:64px 5%}.section-heading{gap:30px}.section-heading>p{max-width:340px;font-size:16px}.integration{gap:6%}.service{padding-right:20px}.service+.service{padding-left:20px}.beyond-grid{gap:24px}.service-detail{font-size:12px}}
@media(max-width:640px){.site-header{padding:8px 6%;min-height:90px}.brand{width:210px;max-width:58vw}.site-header nav>a:not(.nav-contact){display:none}.nav-contact{font-size:13px;padding:10px 13px;gap:12px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:34px 6% 38px}.hero h1{font-size:clamp(3.4rem,13vw,5rem);margin:25px 0 22px}.hero .eyebrow{font-size:11px}.hero-intro{font-size:18px}.hero-foot{margin-top:24px}.hero-photo{min-height:320px}.hero-photo>img{object-position:50% 57%}.photo-label{left:6%;bottom:22px}.service-strip{padding:21px 6%;justify-content:space-between;gap:10px;font-size:12px}.strip-note{display:none}.section{padding:54px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:none}.service-grid{grid-template-columns:1fr}.service{padding:26px 0!important}.service+.service{border-left:0;border-top:1px solid #c9d2d7}.service-top{margin-bottom:21px}.service h3{font-size:27px}.service>p{margin-bottom:18px}.service-detail{font-size:13px}.integration{grid-template-columns:1fr;gap:34px}.integration-list article:last-child{padding-bottom:0}.beyond-grid{grid-template-columns:1fr;gap:30px}.beyond-grid svg{margin-bottom:16px}.contact{grid-template-columns:1fr;gap:34px}.contact-links strong{font-size:clamp(1.1rem,5vw,1.6rem)}footer{flex-wrap:wrap;padding:25px 6%;gap:17px;font-size:12px}footer>span:nth-child(2){display:none}footer a{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.coming-soon{display:inline-block;margin:8px 0 2px;padding:5px 9px;border:1px solid #55818c;color:#8ee5f3;font-size:12px;font-weight:700;letter-spacing:.06em;line-height:1.4;vertical-align:middle;white-space:nowrap}.integration-list h3 .coming-soon{display:table}.beyond{border-top:1px solid #c9d2d7}
.centred-header{max-width:1500px;margin:auto;padding:24px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid #ffffff20}.centred-header>p{font-size:13px;color:#b6cbd4}.centred-header nav{display:flex;gap:28px;align-items:center;font-size:14px}.centred-header nav a:last-child{display:flex;gap:12px;align-items:center}.centred-header a:hover{color:#36c9e7}.centred-hero{text-align:center;padding:18px 5% 60px;max-width:1440px;margin:auto}.intro-logo{position:relative;width:min(640px,100%);margin:auto}.intro-art{position:relative;width:100%;aspect-ratio:1476/827}.intro-art span{position:absolute;inset:0}.intro-art img{width:100%;height:100%;object-fit:contain}.intro-symbol{clip-path:inset(0 0 46% 0);transform-origin:50% 31%}.intro-wordmark{clip-path:inset(54% 0 0 0)}.intro-logo[data-playing=true] .intro-symbol{animation:pcs-symbol 2s cubic-bezier(.22,.61,.36,1) both}.intro-logo[data-playing=true] .intro-wordmark{animation:pcs-type 2s ease both}.intro-skip{display:none!important;position:absolute;bottom:0;right:0;font-size:12px!important;background:#172b34!important;color:#c5d8e1!important;padding:7px 12px!important}.intro-logo[data-playing=true] .intro-skip{display:inline-flex!important}.centred-sectors{font-size:13px;letter-spacing:.07em;color:#9ecad7;margin-top:6px}.centred-hero h1{font-size:clamp(2.5rem,4.8vw,4.8rem);line-height:1.1;letter-spacing:-.05em;margin:22px 0}.centred-hero h1 span{color:#08b5d6}.centred-lead{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.5;margin-bottom:18px}.centred-description{max-width:730px;margin:auto;color:#baccd5;font-size:17px;line-height:1.75}.centred-actions{display:flex;gap:27px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:28px;font-size:15px}.centred-actions .button{margin-top:0}.project-intro-photos{max-width:1280px;margin:0 auto 60px;padding:0 4%}.project-intro-photos figure{margin:0;overflow:hidden;position:relative}.forecourt-feature img{width:100%;height:auto}.control-protect-connect{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:5px}.control-protect-connect figure{aspect-ratio:4/5}.control-protect-connect img{width:100%;height:100%;object-fit:cover}.control-protect-connect .connect-photo img{object-position:center top}.control-protect-connect figure:after{content:'';position:absolute;inset:75% 0 0;background:linear-gradient(transparent,#04151ecc)}.control-protect-connect figcaption{position:absolute;z-index:1;left:24px;bottom:23px;letter-spacing:.14em;font-size:14px;font-weight:700;color:white}
@keyframes pcs-symbol{0%,15%{transform:translateY(20%) scale(1.7)}60%,100%{transform:translateY(0) scale(1)}}
@keyframes pcs-type{0%,42%{opacity:0;clip-path:inset(54% 100% 0 0);transform:translateY(8px)}85%,100%{opacity:1;clip-path:inset(54% 0 0 0);transform:translateY(0)}}
@media(max-width:700px){.centred-header{padding:20px 6%;align-items:flex-start;gap:16px}.centred-header>p{max-width:210px;font-size:12px}.centred-header nav{font-size:13px}.centred-header nav>a:not(:last-child){display:none}.centred-header nav>a:last-child{white-space:nowrap}.centred-hero{padding:10px 6% 35px}.centred-hero h1{font-size:clamp(2rem,7.5vw,3rem)}.centred-description{font-size:16px}.centred-actions{gap:20px}.centred-sectors{font-size:12px}.project-intro-photos{padding:0;margin-bottom:35px}.control-protect-connect{gap:3px;margin-top:3px}.control-protect-connect figcaption{left:10px;bottom:12px;font-size:10px;letter-spacing:.06em}.intro-skip{font-size:11px!important;padding:4px 8px!important}}
@media(prefers-reduced-motion:reduce){.intro-logo[data-playing=true] .intro-symbol,.intro-logo[data-playing=true] .intro-wordmark{animation:none}.intro-logo[data-playing=true] .intro-skip{display:none!important}}
.centred-hero .centred-sectors{font-size:clamp(1.3rem,2.7vw,1.85rem);font-weight:600;letter-spacing:.01em;color:#c5eaf2;margin:32px 0 0}.centred-actions{flex-direction:column;gap:19px;margin-top:22px}.centred-actions .hero-phone{font-size:clamp(1.75rem,3.5vw,2.4rem);font-weight:600;letter-spacing:.015em;line-height:1.3;padding:4px 10px}.centred-actions .hero-phone:hover{color:#36c9e7}

/* Native controls in the standalone build. */
button{font:inherit;cursor:pointer;border:0;border-radius:4px}button:focus-visible{outline:3px solid #03add2;outline-offset:4px}.intro-skip{align-items:center;justify-content:center;min-height:32px}
