/* Cerium Technology — edit colors here to update the entire site. */
:root{--navy:#09283f;--navy-deep:#061e30;--blue:#0677ab;--cyan:#0cafd5;--ink:#152f42;--muted:#526676;--line:#dbe4e9;--wash:#f2f6f8;--white:#fff;--radius:6px;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65;background:#fff}a{color:inherit;text-underline-offset:5px}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12}h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.045em;margin-bottom:1.25rem}h3{font-size:1.25rem;letter-spacing:-.02em}p{margin-bottom:1.3rem}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #0677ab;outline-offset:5px}.hero a:focus-visible,.contact-section a:focus-visible,.about-section a:focus-visible{outline-color:#66daf5}.container{max-width:var(--max);width:calc(100% - 80px);margin-inline:auto}.section{padding:92px 0}.eyebrow{font-size:.875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:1.2rem}.eyebrow.light{color:#78d5ed}.skip-link{position:fixed;left:20px;top:-100px;padding:12px 22px;background:white;color:var(--navy);z-index:100}.skip-link:focus{top:15px}.utility{background:var(--navy-deep);color:#d8e5ed;font-size:.875rem}.utility-inner{display:flex;justify-content:space-between;gap:16px;padding-block:9px}.utility a{text-decoration:none}.utility a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex-shrink:0}.brand img{width:215px;height:auto}.site-header nav{display:flex;gap:32px;align-items:center}.site-header nav a:not(.button){font-size:.9375rem;text-decoration:none;font-weight:600}.site-header nav a:not(.button):hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;border-radius:var(--radius);background:var(--blue);color:white;text-decoration:none;font-weight:700;font-size:.9375rem;line-height:1.4;min-height:48px;transition:background .16s,transform .16s;border:1px solid transparent}.button:hover{background:#055c86;transform:translateY(-1px)}.button-small{padding:13px 20px}.button-bright{background:#17b5da;color:#052a3e}.button-bright:hover{background:#69d7ed}.button-outline{background:transparent;border-color:#6f8e9f;color:white}.button-outline:hover{background:#123c53}.menu-toggle{display:none}.hero{background:var(--navy);color:white;padding:76px 0 0;border-bottom:5px solid var(--cyan)}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:75px;align-items:center}.hero h1{font-size:clamp(3.25rem,5.5vw,4.8rem);line-height:1.06;letter-spacing:-.055em;margin:0 0 25px;font-weight:750}.hero h1 em{font-style:normal;color:#59cdeb}.hero-intro{font-size:1.1875rem;line-height:1.65;color:#d7e4ed;max-width:550px;margin-bottom:30px}.button-row{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.text-link{font-weight:700;color:var(--blue);text-decoration:underline;font-size:.9375rem}.light-link{color:white}.hero-location{font-size:.875rem;color:#b3c9d7;margin:25px 0 0}.hero-panel{background:#fff;color:var(--ink);border-radius:8px;overflow:hidden;border-top:4px solid #1ba9cf;box-shadow:0 22px 60px #0003}.panel-top{padding:28px 30px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.panel-top .eyebrow{font-size:.75rem;margin:0}.panel-label{font-size:.8125rem;color:var(--muted)}.hero-panel h2{font-size:2.4rem;margin:21px 30px 26px;letter-spacing:-.045em}.pillar{display:flex;gap:18px;margin:0 30px;padding:18px 0;border-top:1px solid var(--line)}.pillar-number{color:var(--blue);font-size:.875rem;font-weight:700;margin-top:2px}.pillar h3{font-size:1rem;margin:0 0 5px}.pillar p{font-size:.875rem;color:var(--muted);margin:0}.panel-bottom{background:var(--wash);padding:17px 30px;color:var(--muted);font-size:.875rem}.hero-foot{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #365165;margin-top:66px;padding:25px 0;color:#dbe7ef;font-size:.9375rem}.hero-foot span{flex:1}.hero-foot span+span{border-left:1px solid #365165;padding-left:35px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:385px;color:var(--muted);margin-bottom:4px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid var(--line);padding:30px;border-radius:var(--radius);display:flex;flex-direction:column;transition:border-color .15s}.service-card:hover{border-color:#7caec7}.service-index{font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:24px}.service-card h3{font-size:1.4rem;line-height:1.25;margin-bottom:15px}.service-card p{color:var(--muted);font-size:.9375rem;line-height:1.65}.service-card ul{font-size:.875rem;padding:0 0 0 18px;margin:0 0 26px;line-height:1.65}.service-card li{padding-left:3px;margin:8px 0}.service-card li::marker{color:var(--blue)}.service-link{font-size:.875rem;font-weight:700;color:var(--blue);margin-top:auto;align-self:flex-start}.service-card.featured{background:var(--wash);border-top:3px solid var(--blue);padding-top:28px}.services-note{color:var(--muted);font-size:.875rem;max-width:780px;margin:26px 0 0}.approach{background:var(--wash)}.approach-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:100px}.lead{font-size:1.1875rem;max-width:360px;color:var(--muted)}.approach-list>div{display:flex;gap:24px;padding:22px 0;border-top:1px solid #ccd9e0}.approach-list>div:first-child{padding-top:0;border-top:0}.approach-list>div>span{font-size:.875rem;color:var(--blue);font-weight:700}.approach-list h3{margin:0 0 10px}.approach-list p{color:var(--muted);margin:0;font-size:.9375rem}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.industry-grid article{border-top:2px solid var(--blue);padding-top:24px}.industry-label{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.8125rem;margin-bottom:17px}.industry-grid h3{margin-bottom:16px;line-height:1.3}.industry-grid p{color:var(--muted);margin:0;font-size:1rem}.about-section{background:var(--navy);color:#fff}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:100px}.about-copy{color:#d6e2eb}.about-copy p{font-size:1rem}.about-copy .button{margin-top:10px}.since{display:flex;align-items:center;gap:22px;margin-top:42px}.since strong{font-size:3.8rem;line-height:1;letter-spacing:-.05em;color:#5bd0ed}.since span{font-size:.875rem;color:#b9cfdc;line-height:1.65}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:40px}.steps article{border-top:1px solid var(--line);padding-top:25px}.steps span{display:block;color:var(--blue);font-size:.875rem;font-weight:700;margin-bottom:19px}.steps h3{margin-bottom:12px}.steps p{color:var(--muted);margin:0}.faq-section{background:var(--wash);border-top:1px solid var(--line)}.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:95px}.faq-grid>div>p:not(.eyebrow){color:var(--muted);font-size:.9375rem}.faq-grid a{color:var(--blue)}.faq-list details{border-bottom:1px solid #cbd9e1}.faq-list details:first-child{border-top:1px solid #cbd9e1}.faq-list summary{padding:23px 35px 23px 0;font-weight:700;cursor:pointer;position:relative;list-style:none;font-size:1rem;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:2px;top:22px;color:var(--blue);font-size:1.5rem;line-height:1}.faq-list details[open] summary::after{content:'−'}.faq-list details p{padding-right:24px;color:var(--muted);font-size:.9375rem;margin-bottom:22px}.contact-section{background:var(--navy-deep);color:#fff;border-top:5px solid var(--cyan)}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:95px}.contact-grid>div>p{color:#bed0db;font-size:1.125rem;max-width:500px}.contact-grid .button{margin-top:10px}.contact-details{border-left:1px solid #3a5364;padding-left:46px}.contact-details>div{margin-bottom:25px}.contact-details>div:last-child{margin-bottom:0}.contact-details span{display:block;font-size:.8125rem;color:#b0c9d8;margin-bottom:6px}.contact-details>div>a{font-size:1.25rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.contact-details a:hover{text-decoration:underline}.contact-details p{font-size:.9375rem;margin:0;color:#e3edf3}.support-note{padding-top:22px;border-top:1px solid #3a5364}.support-note h3{font-size:1rem;margin-bottom:9px}.support-note a{color:white}.site-footer{padding:40px 0 22px}.footer-top{display:flex;justify-content:space-between;gap:35px;align-items:center}.footer-top .brand img{width:185px}.footer-top p{font-size:.875rem;color:var(--muted);margin:12px 0 0}.footer-top nav{display:flex;gap:26px;flex-wrap:wrap;font-size:.875rem}.footer-top nav a{text-decoration:none}.footer-top nav a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:22px;font-size:.8125rem;color:var(--muted);margin-top:30px;padding-top:22px}.document{max-width:820px;padding-block:70px}.document h1{font-size:clamp(2.5rem,5vw,3.5rem);letter-spacing:-.04em}.document h2{font-size:1.5rem;margin-top:36px;letter-spacing:-.02em}.document p,.document li{color:var(--muted)}.document ul{padding-left:22px}.document a{color:var(--blue)}
@media(min-width:1600px){.hero{padding-top:95px}.hero-grid{gap:95px}}
@media(max-width:1100px){.container{width:calc(100% - 56px)}.site-header nav{gap:22px}.hero-grid{gap:40px;grid-template-columns:1.25fr 1fr}.hero h1{font-size:3.7rem}.service-card{padding:25px}.approach-grid,.about-grid{gap:60px}.faq-grid,.contact-grid{gap:55px}}
@media(max-width:860px){.header-inner{min-height:85px}.brand img{width:180px}.hero{padding-top:52px}.hero-grid{gap:30px}.hero h1{font-size:3.15rem}.hero-intro{font-size:1.0625rem}.hero-panel h2{font-size:2rem}.panel-top{padding:24px 22px 0}.hero-panel h2{margin-inline:22px}.pillar{margin-inline:22px;gap:12px}.panel-bottom{padding-inline:22px}.button-row{gap:20px}.hero-foot{margin-top:48px}.hero-foot span+span{padding-left:20px}.section{padding-block:68px}.services-grid{grid-template-columns:repeat(2,1fr)}.section-heading{gap:30px}.section-heading>p{max-width:300px}.industry-grid{gap:24px}.approach-grid,.about-grid{gap:38px}.faq-grid{grid-template-columns:1fr 1.35fr;gap:36px}.contact-details{padding-left:26px}.contact-details>div>a{font-size:1.125rem}}
@media(max-width:960px){.container{width:calc(100% - 40px)}.utility-inner>span{display:none}.utility-inner{justify-content:center;padding-block:7px}.header-inner{min-height:78px;flex-wrap:wrap;gap:0;padding-block:16px}.brand img{width:170px}.menu-toggle{display:block;border:1px solid #c9d9e2;border-radius:4px;background:#fff;padding:9px 12px;font-size:.875rem;min-height:44px;color:var(--ink);cursor:pointer;margin-left:auto}.menu-toggle span{margin-left:8px}.site-header nav{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:15px}.site-header nav a:not(.button){padding:12px 0;border-bottom:1px solid var(--line)}.site-header nav .button{margin-top:12px}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}.hero-grid{grid-template-columns:1fr;gap:36px}.hero{padding-top:44px}.hero h1{font-size:clamp(2.9rem,10vw,4rem)}.hero-intro{max-width:550px}.hero-panel h2{font-size:2rem}.hero-panel{max-width:none}.panel-top{padding:23px 25px 0}.hero-panel h2{margin:20px 25px}.pillar{margin-inline:25px;padding:15px 0}.panel-bottom{padding:15px 25px}.hero-location{font-size:.8125rem}.hero-foot{flex-direction:column;gap:10px;padding:23px 0;margin-top:36px}.hero-foot span+span{padding-left:0;border:0}.hero-foot span{font-size:.875rem}.section{padding-block:58px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:500px;margin-top:20px}.services-grid{gap:16px}.service-card{padding:22px}.service-card h3{font-size:1.25rem}.service-card.featured{padding-top:20px}.service-card p{font-size:.9375rem}.approach-grid,.about-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.lead{max-width:500px}.industry-grid{grid-template-columns:1fr;gap:32px}.industry-grid article{padding-top:21px}.industry-label{margin-bottom:12px}.industry-grid p{max-width:550px}.since{margin-top:28px}.about-copy p{font-size:1rem}.steps{grid-template-columns:1fr;gap:25px;margin-top:25px}.steps article{padding-top:20px}.steps span{margin-bottom:13px}.steps p{max-width:550px}.faq-list summary{padding-block:21px}.contact-details{border-left:0;border-top:1px solid #3a5364;padding:30px 0 0}.contact-grid>div>p{font-size:1rem}.footer-top{flex-direction:column;align-items:flex-start;gap:26px}.footer-top nav{gap:23px}.footer-bottom{flex-direction:column;gap:10px}.document{padding-block:48px}html{scroll-padding-top:94px}}
@media(max-width:480px){.services-grid{grid-template-columns:1fr}.hero h1{font-size:2.95rem}.hero .button-row{align-items:flex-start;flex-direction:column;gap:18px}.button{padding-inline:20px}.section h2{font-size:2.15rem}.panel-top .eyebrow{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Core technology stack */
.tool-section{padding:52px 0 58px;border-top:1px solid var(--line)}.tool-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:28px}.tool-heading h2{font-size:2rem;margin-bottom:0}.tool-heading .eyebrow{margin-bottom:13px}.tool-heading>p{font-size:.9375rem;color:var(--muted);max-width:330px;margin-bottom:0}.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.tool-grid>div{padding:0 20px;border-left:1px solid var(--line)}.tool-grid>div:first-child{padding-left:0;border-left:0}.tool-grid h3{font-size:1.1875rem;margin:0 0 9px;line-height:1.4;overflow-wrap:anywhere}.tool-grid p{font-size:.875rem;margin:0;color:var(--muted)}.tool-note{color:var(--muted);font-size:.875rem;margin:20px 0 0;max-width:850px}
@media(max-width:860px){.tool-heading{display:block}.tool-heading>p{max-width:550px;margin-top:18px}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.tool-grid>div{padding:0;border:0}}
@media(max-width:480px){.tool-section{padding:42px 0}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-heading h2{font-size:1.85rem}}

/* Network monitoring service and six core technology providers. */
.network-card{grid-column:1/-1;border-left:4px solid var(--blue);background:var(--wash)}.network-card p{max-width:840px}.network-card ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}.network-card .service-index{margin-bottom:18px}
@media(max-width:1100px){.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.tool-grid>div{padding:0;border:0}}
@media(max-width:480px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-card ul{grid-template-columns:1fr;gap:0}}

/* Network and camera installation. */
.tool-grid{row-gap:26px}.tool-grid>div:nth-child(3n+1){border-left:0;padding-left:0}.installation-section{background:var(--wash);border-top:1px solid var(--line)}.installation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.installation-grid .service-card{background:white}.rural-installation{display:grid;grid-template-columns:1.5fr 1fr;gap:45px;margin-top:32px;padding:30px;border-radius:var(--radius);background:white;border-left:4px solid var(--blue)}.rural-installation .eyebrow{margin-bottom:15px}.rural-installation h3{font-size:1.5rem;margin-bottom:15px}.rural-installation p{color:var(--muted);margin-bottom:0}.rural-installation ul{font-size:.9375rem;align-self:center;margin:0;padding-left:20px}.rural-installation li{margin:14px 0}.rural-installation li::marker{color:var(--blue)}
@media(max-width:960px){.installation-grid{grid-template-columns:1fr}.rural-installation{grid-template-columns:1fr;gap:18px}.installation-grid .service-card ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}}
@media(max-width:480px){.rural-installation{padding:23px}.installation-grid .service-card ul{grid-template-columns:1fr}}
