:root{--black:#15191d;--dark:#242a30;--mid:#4c565f;--bg:#f4f5f6;--white:#fff;--blue:#1e6fa8;--amber:#d89527;--green:#39855b;--line:#d9dee3}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--black);font-size:17px;line-height:1.55}a{color:var(--blue)}header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:24px;padding:14px clamp(18px,4vw,54px);background:#fff;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:var(--black)}.brand b{font-size:1.25rem}.brand span{color:var(--blue)}nav{margin-left:auto;display:flex;gap:18px;align-items:center}nav a{text-decoration:none;color:#20262c;font-size:.95rem}.cta,.primary,button{background:var(--blue);color:#fff!important;text-decoration:none;border:0;border-radius:4px;padding:11px 16px;font-weight:800;display:inline-block;cursor:pointer}.menu{display:none}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;background:var(--black);color:#fff;padding:clamp(40px,7vw,86px) clamp(18px,5vw,72px)}.hero h1{font-size:clamp(2.5rem,5vw,3.55rem);line-height:1.02;margin:0 0 18px}.hero p{color:#d9e0e5;max-width:720px}.eyebrow{color:#9cc9e8!important;text-transform:uppercase;letter-spacing:.08em;font-size:.83rem;font-weight:800}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.actions a:not(.primary),.dark a:not(.primary){border:1px solid #65717b;color:#fff;padding:10px 15px;text-decoration:none;border-radius:4px}.monitor{border:1px solid #49525a;background:#20262c;padding:18px}.camgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.camgrid i{min-height:130px;background:linear-gradient(135deg,#33404a,#121619);border:1px solid #56616b;display:grid;place-items:end start;padding:12px;color:#d8edf8;font-style:normal;font-size:.82rem}.monitor p{font-family:monospace;color:#8ee0b0}section.page,main>section:not(.hero){max-width:1160px;margin:0 auto;padding:clamp(34px,6vw,70px) clamp(18px,4vw,28px)}h1{font-size:clamp(2.2rem,4vw,3.2rem);line-height:1.05}h2{font-size:clamp(1.8rem,3vw,2.45rem);line-height:1.12}h3{font-size:1.35rem}.wide{max-width:850px}.timeline{display:grid;grid-template-columns:auto auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);padding:18px;margin-top:20px}.timeline em{height:2px;background:var(--mid)}.timeline small{color:var(--blue);font-weight:800}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cards article,.page article{background:#fff;border:1px solid var(--line);padding:20px;border-radius:6px}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.split>div,.dark{border:1px solid var(--line);background:#fff;padding:28px}.split span{display:inline-block;border:1px solid var(--line);padding:6px 8px;margin:4px;background:#fff}.dark{max-width:none!important;background:var(--black)!important;color:#fff!important}.dark p{color:#d7dee3}.hp{position:absolute;left:-9999px}.wizard form{background:#fff;border:1px solid var(--line);padding:20px}.wizard fieldset{display:none;border:0;padding:0}.wizard fieldset.active{display:block}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.checks label,label{display:block;background:#fff;border:1px solid var(--line);padding:10px;border-radius:4px}input,select,textarea{width:100%;min-height:44px;border:1px solid #bcc4cc;border-radius:4px;padding:10px;font:inherit;background:#fff}textarea{min-height:100px}.formnav{display:flex;gap:10px;margin-top:18px}.submit{display:none}.steps{display:flex;gap:6px;margin:12px 0}.steps i{height:6px;flex:1;background:#cbd3d9}.steps i.active{background:var(--blue)}.hint{font-size:.92rem;color:var(--mid)}.success h2{font-family:monospace;color:var(--blue)}footer{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:20px;padding:36px clamp(18px,4vw,54px);background:#101316;color:#dfe5e8}footer a{display:block;color:#dfe5e8;text-decoration:none;margin:5px 0}footer small{grid-column:1/-1;color:#9aa4aa}.metrics{display:flex;gap:10px;flex-wrap:wrap}.metric{background:#fff;border:1px solid var(--line);padding:14px;min-width:120px}.metric b{display:block;font-size:2rem;color:var(--blue)}.leadlist{background:#fff;border:1px solid var(--line);padding:0}.leadlist li{list-style:none;border-bottom:1px solid var(--line);padding:12px}.leadlist span{display:block;color:var(--mid)}.detailgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.detailgrid p{background:#fff;border:1px solid var(--line);padding:12px;overflow-wrap:anywhere}@media(max-width:900px){header{align-items:flex-start;flex-wrap:wrap}nav{display:none;width:100%;flex-direction:column;align-items:flex-start}.open nav{display:flex}.menu{display:block;margin-left:auto}.hero,.split{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.checks{grid-template-columns:1fr}footer{grid-template-columns:1fr}.timeline{grid-template-columns:1fr;align-items:start}.timeline em{display:none}.detailgrid{grid-template-columns:1fr}}
.lead-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}.lead-paths a{display:block;border:1px solid #56616b;background:#fff;color:var(--black);text-decoration:none;border-radius:6px;padding:14px}.lead-paths b{display:block;color:var(--blue);font-size:1.02rem}.lead-paths span{display:block;color:var(--mid);font-size:.92rem;margin-top:4px}.hero .lead-paths a{background:#f8fafb}.hero .lead-paths span{color:#4c565f}@media(max-width:760px){.lead-paths{grid-template-columns:1fr}}

.brand-wall{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brand-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.brand-logos img{display:block;width:100%;height:auto;background:#fff;border-radius:6px;filter:grayscale(.08)}@media(max-width:900px){.brand-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.brand-logos{grid-template-columns:1fr}}

.provided-logos{grid-template-columns:repeat(4,minmax(0,1fr))}.provided-logos img{aspect-ratio:265/198;object-fit:contain;padding:18px;background:#fff;border:1px solid var(--line);border-radius:6px}@media(max-width:900px){.provided-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.provided-logos{grid-template-columns:1fr}}


/* Hero background image supplied for top sales area */
.hero{position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(10,14,18,.92),rgba(10,14,18,.72) 48%,rgba(10,14,18,.38)),url('/assets/images/hero-camera.jpg?v=20260927') center/cover no-repeat!important;min-height:620px}.hero>div,.hero>aside{position:relative;z-index:1}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.35));pointer-events:none}.hero .monitor{background:rgba(15,22,28,.74);backdrop-filter:blur(1px)}@media(max-width:900px){.hero{min-height:auto;background:linear-gradient(180deg,rgba(10,14,18,.92),rgba(10,14,18,.72)),url('/assets/images/hero-camera.jpg?v=20260927') center/cover no-repeat!important}}

.coverage-visual{display:grid;grid-template-columns:.82fr 1.18fr;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);padding:22px}.coverage-visual img{width:100%;height:auto;display:block;border:1px solid var(--line);box-shadow:0 12px 28px rgba(0,0,0,.12)}.coverage-visual p{color:var(--muted)}@media(max-width:900px){.coverage-visual{grid-template-columns:1fr;padding:16px}}

/* Real camera views in the mock NVR screen */
.nvr-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.nvr-grid figure{position:relative;margin:0;min-height:132px;background:#06090c;border:1px solid rgba(255,255,255,.14);overflow:hidden}.nvr-grid img{width:100%;height:100%;min-height:132px;object-fit:cover;display:block;filter:saturate(.95) contrast(1.04)}.nvr-grid figcaption{position:absolute;left:8px;top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.08em;color:#d8f2e4;text-shadow:0 1px 4px #000;background:rgba(0,0,0,.46);border:1px solid rgba(255,255,255,.14);padding:4px 6px}.nvr-grid figcaption b{color:#52d273;font-weight:800}.monitor .nvr-grid + p{margin-top:12px}@media(max-width:520px){.nvr-grid{grid-template-columns:1fr}.nvr-grid figure{min-height:170px}.nvr-grid img{min-height:170px}}

.top-build{margin-left:auto;background:var(--blue);color:#fff!important;padding:10px 14px;border-radius:4px;font-weight:800;text-decoration:none;box-shadow:0 6px 14px rgba(30,111,168,.18)}.top-build:hover{background:#185d8e}@media(max-width:620px){header{gap:12px}.top-build{padding:9px 10px;font-size:13px;white-space:nowrap}}

.remote-phone{position:relative;min-height:430px;display:flex;align-items:center;overflow:hidden;background:#111820;border:1px solid var(--line);padding:0}.remote-phone img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.remote-phone:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,13,17,.88),rgba(9,13,17,.62) 46%,rgba(9,13,17,.20));pointer-events:none}.remote-copy{position:relative;z-index:1;max-width:520px;margin:42px;padding:26px;background:rgba(12,17,22,.72);border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 42px rgba(0,0,0,.28)}.remote-copy h2{color:#fff;margin-top:6px;font-size:clamp(34px,5vw,60px);line-height:.95}.remote-copy p{color:#e8edf2}.remote-copy .eyebrow{color:#a9d8ff}@media(max-width:760px){.remote-phone{min-height:520px;align-items:flex-end}.remote-phone:after{background:linear-gradient(180deg,rgba(9,13,17,.15),rgba(9,13,17,.88))}.remote-copy{margin:18px;padding:20px}.remote-copy h2{font-size:34px}}

/* Stretch remote phone image band to full browser width */
.remote-phone{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-left:0;border-right:0}.remote-phone .remote-copy{margin-left:max(42px,calc((100vw - 1180px)/2 + 42px))}@media(max-width:760px){.remote-phone .remote-copy{margin-left:18px}}

/* Header logo and forced full-width remote band */
.logo-brand{display:flex;align-items:center;max-width:min(410px,58vw);padding:0}.logo-brand img{display:block;width:100%;height:auto;max-height:68px;object-fit:contain}.top-build{align-self:center}main>.remote-phone{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;border-left:0!important;border-right:0!important;border-radius:0!important}.remote-phone .remote-copy{margin-left:max(42px,calc((100vw - 1180px)/2 + 42px))!important}@media(max-width:760px){.logo-brand{max-width:62vw}.logo-brand img{max-height:48px}.remote-phone .remote-copy{margin-left:18px!important}}

.time-machine-visual{padding:0;background:#07111b;border:0;overflow:hidden}.time-machine-visual img{display:block;width:100%;height:auto;border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 42px rgba(0,0,0,.18)}@media(max-width:760px){.time-machine-visual{margin-left:-16px;margin-right:-16px}.time-machine-visual img{border-left:0;border-right:0}}

/* Full-width brand logo band and time-machine image */
main>.brand-wall,main>.time-machine-visual{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;border-left:0!important;border-right:0!important;border-radius:0!important}.brand-wall{padding-left:max(22px,calc((100vw - 1180px)/2 + 22px))!important;padding-right:max(22px,calc((100vw - 1180px)/2 + 22px))!important}.time-machine-visual img{width:100%!important;border-left:0!important;border-right:0!important}

/* Keep gray brand logos in one full-width row */
.brand-wall .provided-logos{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:0!important;width:100%!important}.brand-wall .provided-logos img{width:100%!important;max-width:none!important;height:auto!important;min-width:0!important;border-radius:0!important;border-left:0!important}.brand-wall .provided-logos img:first-child{border-left:1px solid var(--line)!important}@media(max-width:760px){.brand-wall .provided-logos{grid-template-columns:repeat(7,minmax(82px,1fr))!important;overflow-x:auto!important}.brand-wall .provided-logos img{min-width:82px!important}}

/* Make the logo strip itself edge-to-edge, not just the section */
.brand-wall .provided-logos{width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}

.cards article .card-icon{width:74px;height:74px;object-fit:contain;display:block;margin:0 0 14px 0}.cards article{position:relative}.cards article h3{margin-top:0}@media(max-width:620px){.cards article .card-icon{width:64px;height:64px}}

/* Larger centered What We Do icons */
.cards article{text-align:center}.cards article .card-icon{width:148px!important;height:148px!important;margin:0 auto 18px auto!important}.cards article h3{text-align:center;margin-top:0;margin-bottom:10px}.cards article p{text-align:center}@media(max-width:620px){.cards article .card-icon{width:128px!important;height:128px!important}}
