@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--navy:#06111d;--navy2:#0b1c2c;--blue:#52b9fb;--blue2:#158cd8;--ink:#102233;--muted:#556675;--ice:#eff7fc;--line:#d7e7f1;--white:#fff;font-family:Inter,Arial,sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Barlow Condensed',Arial,sans-serif;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,6vw,5.8rem);line-height:1.06}h2{font-size:clamp(2rem,3.6vw,3.6rem);line-height:1.13}h3{font-size:1.25rem;line-height:1.3}p{line-height:1.72}small{font-size:.85rem}::selection{background:var(--blue);color:var(--navy)}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.container{width:min(1180px,calc(100% - 48px));margin:auto}.eyebrow{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:var(--blue2);margin:0 0 20px}.eyebrow.light{color:#80ceff}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:53px;padding:14px 25px;border-radius:7px;font-weight:800;font-size:.92rem;background:var(--blue);color:#06111d;border:1px solid var(--blue);transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);background:#9cddff;box-shadow:0 12px 30px #36a8f43d}.button.outline{background:transparent;color:#fff;border-color:#668098}.button.outline:hover{background:#ffffff13}.button.dark{background:var(--navy);border-color:var(--navy);color:#fff}.button.ghost{background:transparent;border-color:var(--line);color:var(--ink)}.button.ghost:hover{background:var(--ice)}.site-header{position:sticky;top:0;z-index:30;background:#06111df5;color:#fff;border-bottom:1px solid #ffffff18;backdrop-filter:blur(18px)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand img{width:55px;height:55px;object-fit:cover;object-position:38% 40%;border:1px solid #4caaf944;border-radius:8px}.brand-name{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;letter-spacing:-.03em;font-size:1.02rem;line-height:1.08}.brand-name span{display:block;color:#78caff;font-size:.72rem;letter-spacing:.24em;margin-top:4px}.nav-links{display:flex;align-items:center;gap:21px}.nav-links a:not(.nav-cta){font-size:.82rem;font-weight:700;color:#d6e6f1;white-space:nowrap;transition:color .2s}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--blue)}.nav-cta{background:#48aff3;color:#06111d;padding:11px 16px;border-radius:6px;font-size:.82rem;font-weight:800;white-space:nowrap}.menu-toggle{display:none;background:none;border:1px solid #ffffff44;color:#fff;padding:9px 12px;border-radius:5px;font-size:1.25rem}.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;min-height:680px;display:flex;align-items:center}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06111d 0%,#06111df5 36%,#06111dc9 58%,#06111d43 100%),url('hero-security.webp') center center/cover no-repeat;opacity:.92}.hero:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 75% 42%,transparent 10%,#06111d64 75%);pointer-events:none}.hero .container{position:relative;z-index:1;padding:110px 0 100px}.hero-copy{max-width:700px}.hero h1 strong{color:var(--blue);font-weight:800}.hero p{font-size:1.16rem;color:#d1e0eb;max-width:580px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-note{display:flex;align-items:center;gap:12px;margin-top:42px;color:#a9c0d0;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.hero-note:before{content:'';width:30px;height:1px;background:var(--blue)}.ticker{overflow:hidden;background:#42b0f3;color:#06111d;padding:17px 0;font-family:'Barlow Condensed',Arial,sans-serif;font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.ticker-track{display:flex;width:max-content;align-items:center;gap:0;will-change:transform}.ticker-group{display:flex;flex:none;align-items:center;width:max-content}.ticker-group span{display:inline-flex;flex:none;align-items:center;padding:0 14px}.ticker-group span:after{content:'✦';display:inline-block;margin-left:28px;font-size:.7rem}@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}section.pad{padding:105px 0}.section-head{max-width:680px;margin-bottom:40px}.section-head p:last-child{color:var(--muted);font-size:1.06rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:12px;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #092a4414;border-color:#8acbf3}.service-card .icon,.feature .icon{display:grid;place-items:center;width:51px;height:51px;background:#e3f4ff;color:#168bd1;border-radius:9px;margin-bottom:29px;font-size:1.45rem;font-weight:800}.service-card p{color:var(--muted);margin:0}.service-card a{font-weight:800;color:#087ebf;display:inline-block;margin-top:22px}.tint{background:#f3f9fd}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.copy p{color:var(--muted)}.copy .button{margin-top:15px}.poster-frame{background:#07121e;padding:12px;border-radius:14px;box-shadow:0 30px 80px #09203824;max-width:440px;margin:auto;position:relative}.poster-frame img{width:100%;max-height:560px;object-fit:cover;object-position:top;border-radius:7px}.poster-frame:after{content:'CLEAR VIEW / MUNSTER';position:absolute;bottom:25px;right:25px;background:#07121de8;color:#83cefa;padding:9px 12px;font-size:.7rem;font-weight:800;letter-spacing:.16em}.dark-band{background:var(--navy2);color:#fff}.dark-band .section-head p:last-child,.dark-band .copy p{color:#b7ccdb}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.feature{padding:30px 0;border-top:1px solid #6bbff842}.feature .icon{background:#18364d;color:#79caff}.feature p{color:#b7ccdb}.service-area{background:linear-gradient(135deg,#071725,#0e304a);color:#fff}.service-area h2{max-width:570px}.area-pills{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.area-pills span{padding:11px 17px;border:1px solid #79c7f466;border-radius:100px;color:#cce9f9;font-weight:700}.map-wrap{overflow:hidden;border-radius:11px;border:1px solid #9edafb66;background:#102d42}.map-wrap iframe{width:100%;height:390px;border:0;display:block}.map-note{font-size:.87rem;color:#b9d3e4;margin:13px 0 0}.cta{background:#dff2ff;padding:64px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{max-width:690px;margin-bottom:0}.site-footer{background:#05101b;color:#c2d2df;padding:78px 0 26px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.15fr;gap:42px}.footer-brand{font-family:'Barlow Condensed',Arial,sans-serif;font-size:1.35rem;color:#fff;font-weight:800;letter-spacing:-.04em}.footer-grid h3{font-size:.94rem;color:#fff;letter-spacing:0}.footer-grid a{display:block;margin:11px 0;color:#bdd3e2;overflow-wrap:anywhere}.footer-grid a:hover{color:var(--blue)}.footer-grid p{font-size:.9rem}.footer-bottom{border-top:1px solid #ffffff24;margin-top:62px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;font-size:.82rem}.page-hero{background:radial-gradient(circle at 85% 20%,#124a6d,#071625 58%);color:#fff;padding:95px 0 85px}.page-hero h1{font-size:clamp(2.65rem,5vw,4.6rem);max-width:850px;margin-bottom:19px}.page-hero p{max-width:710px;color:#c5d9e7;font-size:1.08rem}.content-section{padding:80px 0}.narrow{max-width:800px}.lead{font-size:1.2rem;color:#425766}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.guide-card{padding:29px;border:1px solid var(--line);border-radius:11px}.guide-card p{color:var(--muted);margin-bottom:0}.guide-card .tag{font-size:.75rem;color:#0a81c5;letter-spacing:.13em;text-transform:uppercase;font-weight:800}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:steps}.step{padding:30px;background:#f1f8fd;border-radius:10px}.step:before{counter-increment:steps;content:'0' counter(steps);color:#168bd1;display:block;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;font-size:1.5rem;margin-bottom:22px}.step p{color:var(--muted)}.faq-list{max-width:850px}.faq-list details{border-bottom:1px solid var(--line);padding:7px 0}.faq-list summary{padding:20px 30px 20px 0;cursor:pointer;list-style:none;font-weight:800;font-size:1.1rem;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:5px;color:var(--blue2);font-size:1.4rem;top:15px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{color:var(--muted);max-width:740px;margin:0 0 23px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.contact-info a{color:#087ebf;font-weight:800;overflow-wrap:anywhere}.form-card{padding:38px;background:#f2f8fc;border:1px solid var(--line);border-radius:12px}.form-card label{display:block;font-size:.91rem;font-weight:800;margin-bottom:8px}.form-card input,.form-card select,.form-card textarea{display:block;width:100%;padding:14px 15px;border:1px solid #bbcedb;border-radius:5px;background:#fff;color:var(--ink);margin-bottom:19px;min-height:48px}.form-card textarea{min-height:130px;resize:vertical}.form-card .button{width:100%}.smallprint{font-size:.83rem;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none}.reveal{opacity:1;transform:none;transition:none}*{scroll-behavior:auto!important}}@media(max-width:1050px){.nav-links{gap:12px}.nav-links a:not(.nav-cta){font-size:.76rem}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.menu-toggle{display:block}.nav{min-height:70px}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:#071725;padding:20px 24px 26px;flex-direction:column;align-items:stretch;box-shadow:0 20px 30px #0006}.nav-links.open{display:flex}.nav-links a:not(.nav-cta){font-size:1rem;padding:8px}.nav-cta{text-align:center}.split,.contact-grid{grid-template-columns:1fr;gap:40px}.grid-3,.feature-grid{grid-template-columns:repeat(2,1fr)}.hero{min-height:620px}.hero:before{background:linear-gradient(90deg,#06111df9,#06111dda),url('hero-security.webp') center center/cover no-repeat}.cta-inner{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.container{width:min(100% - 36px,1180px)}.hero{min-height:610px}.hero .container{padding:78px 0}.hero h1{font-size:clamp(2.65rem,12vw,4rem)}.hero p{font-size:1.04rem}.hero-actions .button{width:100%}.hero-note{margin-top:30px}.grid-3,.feature-grid,.guide-grid,.steps,.footer-grid{grid-template-columns:1fr}.site-footer{padding-top:60px}.footer-grid{gap:26px}.footer-bottom{flex-direction:column;margin-top:40px}.page-hero{padding:70px 0 65px}section.pad,.content-section{padding:70px 0}.service-card{padding:26px}.form-card{padding:24px}.map-wrap iframe{height:330px}}

/* Confident architectural typography */
h1,h2,h3{letter-spacing:-.015em;font-weight:800}h1{font-size:clamp(3.7rem,8vw,7.3rem);line-height:.9;text-transform:uppercase}h2{font-size:clamp(2.7rem,5vw,4.6rem);line-height:.98;text-transform:uppercase}h3{font-size:1.65rem;letter-spacing:0}.page-hero h1{font-size:clamp(3.4rem,6vw,6rem);line-height:.92}.brand-name{font-size:1.35rem;line-height:.91;letter-spacing:.04em}.footer-brand{font-size:1.8rem;letter-spacing:.02em}.ticker{font-family:'Barlow Condensed',Arial,sans-serif;font-size:1.12rem;letter-spacing:.12em}.poster-frame{max-width:560px}.poster-frame img{aspect-ratio:4/3;max-height:none;object-fit:cover}.poster-frame:after{display:none}@media(max-width:600px){.hero h1{font-size:clamp(3.3rem,15vw,5rem)}.page-hero h1{font-size:clamp(3.2rem,13vw,4.8rem)}}

/* Keep the whole CCTV system visible at every screen width. */
.product-frame{width:100%;max-width:560px;margin:auto;padding:10px;background:#07121e;border-radius:14px;box-shadow:0 30px 80px #09203824;overflow:hidden}.product-frame img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:6px}@media(max-width:600px){.product-frame{max-width:100%}}

@media(max-width:600px){.ticker-group span{padding:0 10px}.ticker-group span:after{margin-left:20px}}

.about-image{width:100%;overflow:hidden;border-radius:12px;box-shadow:0 30px 80px #09203824}.about-image img{width:100%;height:auto;display:block;object-fit:cover}

/* Prevent mobile scroll reveals from leaving empty white sections. */
@media(max-width:600px){section.pad{padding:54px 0}.reveal{opacity:1;transform:none}}

.why-callout{background:#0a263d;color:#fff;border-radius:12px;padding:38px 42px;border:1px solid #529fc847}.why-callout h3{font-size:clamp(2rem,3vw,2.8rem);max-width:400px}.why-callout ul{margin:24px 0;padding-left:23px;line-height:1.75;color:#e2f1fa}.why-callout li{padding-left:7px;margin:8px 0}.why-callout p:last-child{color:#b9d8e8;margin-bottom:0}.dark-band .copy a:not(.button){color:#89d0ff;font-weight:700;text-decoration:underline;text-underline-offset:4px}.faq-section+.faq-section{margin-top:65px}.faq-section h2{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:22px}.faq-list details p{line-height:1.75;font-size:1rem}@media(max-width:600px){.why-callout{padding:28px 25px}.faq-section+.faq-section{margin-top:48px}}

/* Homepage hero: display the supplied artwork at its full portrait ratio. */
.poster-hero{min-height:0;background:linear-gradient(120deg,#06111d,#0b2740);isolation:isolate}.poster-hero:before,.poster-hero:after{display:none}.poster-hero .hero-grid{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(340px,.87fr);gap:clamp(34px,5vw,78px);align-items:center;padding:56px 0}.poster-hero .hero-copy{max-width:640px}.poster-hero h1{font-size:clamp(3.4rem,6vw,6.2rem)}.poster-hero .hero-poster{margin:0;width:100%;display:flex;align-items:center;justify-content:center}.poster-hero .hero-poster img{width:auto;height:auto;max-width:100%;max-height:680px;object-fit:contain;border:1px solid #69bfff6b;border-radius:10px;box-shadow:0 28px 75px #0008}.poster-hero .hero-actions{margin-top:30px}@media(max-width:820px){.poster-hero .hero-grid{grid-template-columns:1fr;gap:32px;padding:60px 0}.poster-hero .hero-copy{max-width:700px}.poster-hero .hero-poster img{max-height:none;width:min(100%,460px)}}@media(max-width:600px){.poster-hero .hero-grid{padding:46px 0 40px;gap:30px}.poster-hero h1{font-size:clamp(3rem,13vw,4.7rem)}.poster-hero .hero-poster img{width:100%;max-width:390px}}

/* Quote confirmation */
.confirmation-page{background:radial-gradient(circle at 84% 5%,#114367 0,#0a2237 34%,#06111d 76%);color:#fff;padding:80px 0 88px;min-height:620px}.confirmation-layout{max-width:880px}.confirmation-card{background:#0b2134;border:1px solid #68baf456;border-radius:16px;padding:clamp(30px,5vw,64px);box-shadow:0 30px 85px #0005}.confirmation-mark{display:grid;place-items:center;width:64px;height:64px;border:2px solid #67c5ff;border-radius:50%;color:#9dddff;font-family:Arial,sans-serif;font-size:2rem;margin-bottom:27px}.confirmation-card h1{font-size:clamp(3rem,6vw,5.4rem);max-width:710px;line-height:.93}.confirmation-lead{font-size:1.1rem;max-width:670px;color:#d6e7f2}.confirmation-divider{height:1px;background:#8ac8ec42;margin:32px 0}.confirmation-next{display:grid;grid-template-columns:1fr 1fr;gap:24px}.confirmation-next>div{display:flex;gap:14px}.confirmation-number{font-family:'Barlow Condensed',Arial,sans-serif;color:#77caff;font-size:1.5rem;font-weight:800}.confirmation-next p{margin:0;color:#b9d1e0;font-size:.95rem}.confirmation-next strong{color:#fff}.confirmation-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.confirmation-help{color:#b3cddd;margin:25px 0 0;text-align:center;font-size:.9rem}.confirmation-help a{color:#91d5ff;text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.confirmation-page{padding:42px 0 60px;min-height:0}.confirmation-next{grid-template-columns:1fr;gap:17px}.confirmation-actions .button{width:100%}}

/* Keep form success and failure visible without changing pages. */
[hidden]{display:none!important}.form-error{background:#fff0ed;border-left:4px solid #bd422b;color:#792414;padding:14px 16px;border-radius:4px;line-height:1.5}.form-card button:disabled{opacity:.65;cursor:wait}.form-success{outline:none}.form-success .confirmation-mark{background:#09263d;border-color:#40aef0;margin-bottom:24px}.form-success h3{font-size:clamp(2rem,3vw,3rem);line-height:1.05;margin:14px 0}.form-success p{line-height:1.7}.form-success a:not(.button){color:#08689e;font-weight:700;text-decoration:underline;text-underline-offset:3px}.form-success .button{margin-top:17px}
