:root{--navy:#102235;--deep:#0b1928;--blue:#96c9ee;--accent:#056aa5;--ink:#162a3b;--muted:#536575;--line:#d9e2e8;--paper:#f4f7f9;--white:#fff;--radius:14px;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #0087cc;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.6rem,5.2vw,4.65rem);font-weight:600;margin-bottom:24px}h2{font-size:clamp(2rem,3.1vw,3rem);font-weight:600;margin-bottom:22px}h3{font-size:1.45rem;font-weight:600}p{margin-bottom:1.2em}.container{width:min(calc(100% - 80px),var(--max));margin-inline:auto}.eyebrow{text-transform:uppercase;font-size:.7rem;line-height:1.5;letter-spacing:.18em;font-weight:700;margin-bottom:24px}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:99}.skip:focus{top:8px}.site-header{background:var(--deep);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff1a}.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{flex:0 0 218px;display:block}.brand img{width:218px;height:auto}.nav-list{display:flex;align-items:center;gap:27px;list-style:none;padding:0;margin:0}.nav-list a{text-decoration:none;font-size:.82rem;font-weight:600;white-space:nowrap;color:#e6edf2;display:inline-flex;align-items:center;min-height:44px}.nav-list a:hover,.nav-list a[aria-current=page]{color:var(--blue)}.nav-list .nav-cta{padding:0 18px;background:#c1e3f9;border-radius:5px;color:var(--deep)}.nav-list .nav-cta:hover{background:#fff;color:var(--deep)}.menu-button{display:none;color:#fff;background:transparent;border:1px solid #526577;border-radius:5px;min-height:44px;padding:8px 13px;align-items:center;gap:9px}.menu-button svg{width:20px;height:20px}.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.02fr 1fr;min-height:620px;gap:65px;align-items:center;padding-block:65px 72px}.hero-copy{position:relative;z-index:1}.hero .eyebrow{color:var(--blue);display:flex;align-items:center;gap:12px}.hero .eyebrow:before{content:'';width:24px;height:1px;background:var(--blue)}.hero h1 span{color:var(--blue)}.hero-intro{color:#c7d3de;max-width:500px;font-size:1.06rem;line-height:1.75;margin-bottom:30px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:13px 24px;background:#b9e0f7;color:var(--deep);text-decoration:none;border:1px solid transparent;border-radius:5px;font-size:.87rem;font-weight:700;line-height:1.5;transition:background .16s,transform .16s}.button:hover{background:#d9effb;transform:translateY(-2px)}.button svg,.text-link svg{width:18px;height:18px;flex:none}.button-dark{background:var(--navy);color:white}.button-dark:hover{background:#23415b}.button-outline{background:transparent;color:white;border-color:#657583}.button-outline:hover{background:#ffffff0d}.hero-note{font-size:.76rem;margin:27px 0 0;color:#b5c4d0}.product-stage{margin:0;position:relative;background:#f1f3f3;border-radius:180px 180px 12px 12px;min-height:477px;padding:30px 26px 18px;color:var(--ink);isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.product-stage:before{content:'';position:absolute;width:75%;aspect-ratio:1;border:1px solid #d6dddf;border-radius:50%;z-index:-1;top:30px}.hero-product{width:94%;max-height:390px;object-fit:contain;filter:drop-shadow(0 18px 15px #1126381a)}.stage-caption{width:100%;border-top:1px solid #ccd5db;padding:16px 4px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;line-height:1.4}.stage-caption strong{font-size:.84rem;letter-spacing:.05em}.stage-caption span{font-size:.67rem;text-transform:uppercase;letter-spacing:.1em}.product-number{position:absolute;right:21px;top:30px;font-size:.67rem;letter-spacing:.13em;color:#647580}.trust-strip{background:#eaf1f5;border-bottom:1px solid var(--line)}.trust-inner{display:grid;grid-template-columns:1fr 1fr 1fr;padding-block:25px}.trust-item{display:flex;align-items:center;gap:14px;justify-content:center;border-right:1px solid #cbd7df;font-size:.84rem}.trust-item:first-child{justify-content:flex-start}.trust-item:last-child{border:0;justify-content:flex-end}.trust-item svg{width:26px;height:26px;color:var(--accent);flex:none}.trust-item strong{display:block;font-size:.87rem}.trust-item small{font-size:.75rem;color:var(--muted)}.section{padding-block:92px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:38px}.section-head h2{margin:0;max-width:520px}.section-head p{max-width:350px;color:var(--muted);font-size:.94rem;margin:0}.section-head .eyebrow{margin-bottom:12px;color:var(--accent)}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.service-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;background:white;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 14px 36px #1022350d}.service-picture{height:182px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#f0f4f6;border-bottom:1px solid var(--line)}.service-picture img{width:100%;height:100%;object-fit:cover}.service-picture .contain{object-fit:contain;padding:14px}.service-picture svg{width:94px;height:94px;stroke-width:1.1;color:#274c69}.service-body{padding:24px 22px;display:flex;flex-direction:column;flex:1}.service-index{font-size:.65rem;font-weight:700;letter-spacing:.12em;color:var(--accent);margin:0 0 12px}.service-body h3{font-size:1.23rem;letter-spacing:-.025em;margin-bottom:12px}.service-body p{font-size:.84rem;line-height:1.75;color:var(--muted);margin-bottom:25px}.service-link{font-size:.79rem;font-weight:700;margin-top:auto;display:flex;justify-content:space-between;align-items:center}.service-link svg{width:17px;height:17px}.wireless-band{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:26px;padding:21px 25px;background:var(--paper);border-left:3px solid #8bc5ec;font-size:.89rem}.text-link{display:inline-flex;align-items:center;gap:13px;font-size:.85rem;font-weight:700;white-space:nowrap}.about-section{background:var(--paper);border-block:1px solid var(--line)}.about-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;align-items:start}.established{font-size:clamp(6rem,12vw,10.5rem);letter-spacing:-.075em;line-height:1.05;margin:6px 0;color:var(--navy);font-weight:500}.established-caption{color:var(--muted);font-size:.86rem;border-top:1px solid #c9d6df;max-width:355px;padding-top:21px;margin-top:22px}.about-copy>p{color:var(--muted);font-size:.96rem}.about-copy h2{max-width:490px}.feature-list{list-style:none;padding:0;margin:26px 0}.feature-list li{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);padding:13px 0;font-size:.9rem}.feature-list svg{width:19px;height:19px;color:var(--accent);flex:none}.quote-section{padding-block:75px}.quote-layout{display:grid;grid-template-columns:.75fr 2fr;gap:75px}.quote-label{color:var(--accent);max-width:160px}.quote-section blockquote{margin:0}.quote-section blockquote p{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.45;letter-spacing:-.025em;max-width:800px}.quote-section cite{font-size:.81rem;font-style:normal;color:var(--muted)}.quote-section .text-link{margin-top:20px}.cta-section{background:var(--navy);color:white;padding-block:65px}.cta-layout{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta-layout h2{margin-bottom:15px}.cta-layout p{color:#c4d1dc;margin:0;max-width:580px}.site-footer{background:var(--deep);color:#bac8d3;padding-top:55px}.footer-layout{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.15fr;gap:50px;padding-bottom:40px}.footer-logo{width:215px;margin-bottom:20px}.footer-about{font-size:.82rem;max-width:260px}.footer-heading{font-size:.75rem;font-weight:700;color:white;text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}.footer-list{list-style:none;padding:0;margin:0}.footer-list li{margin-bottom:8px;font-size:.79rem}.footer-list a{text-decoration:none;display:inline-block;padding-block:4px;overflow-wrap:anywhere}.footer-list a:hover{text-decoration:underline;color:white}.footer-address{font-size:.79rem;font-style:normal}.footer-bottom{border-top:1px solid #ffffff20;display:flex;justify-content:space-between;gap:20px;padding-block:22px;font-size:.71rem}.footer-bottom a{color:#d2dfe8}.mobile-call{display:none}.page-hero{background:var(--navy);color:white;padding-block:56px 61px}.breadcrumbs{font-size:.75rem;color:#a8bdcd;display:flex;gap:12px;flex-wrap:wrap;margin-bottom:29px}.breadcrumbs a{text-decoration:none}.page-hero .eyebrow{color:var(--blue);margin-bottom:18px}.page-hero h1{font-size:clamp(2.4rem,4.5vw,3.7rem);max-width:800px;margin-bottom:17px}.page-intro{color:#cad8e1;max-width:760px;font-size:1rem;margin:0}.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:80px;align-items:start;padding-block:62px 85px}.article{min-width:0;overflow-wrap:anywhere}.article p,.article li{font-size:.96rem;line-height:1.85;color:#415566}.article h2{font-size:1.9rem;margin-top:38px}.article h3{margin-top:30px}.article ul{padding-left:23px}.article li{padding-left:5px;margin-bottom:11px}.article img{max-width:100%;height:auto}.article iframe{max-width:100%}.article table{display:block;max-width:100%;overflow:auto}.article>p:first-child strong{font-size:1.15rem;color:var(--ink)}.sidebar{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:27px;position:sticky;top:137px}.sidebar h2{font-size:1.3rem;letter-spacing:-.02em}.sidebar p{font-size:.85rem;color:var(--muted)}.sidebar .button{width:100%;padding-inline:9px;font-size:.81rem}.sidebar-links{list-style:none;padding:15px 0 0;margin:15px 0 0;border-top:1px solid var(--line)}.sidebar-links a{display:block;font-size:.82rem;text-decoration:none;padding-block:9px}.sidebar-links a:hover{text-decoration:underline}.sidebar-links a[aria-current=page]{font-weight:700;color:var(--accent)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:35px}.contact-box{padding:25px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.contact-box h2{font-size:1.15rem;letter-spacing:-.02em;margin:0 0 12px}.contact-box a{display:block;font-size:.96rem;padding-block:6px;overflow-wrap:anywhere}.contact-box p,.contact-box address{font-style:normal;font-size:.87rem;margin:0}.notice{font-size:.85rem;color:var(--muted)}.error-page{padding-block:100px;text-align:center}.error-page p{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}
@media(min-width:1400px){.hero-layout{min-height:680px}.product-stage{min-height:495px}.hero-product{max-height:408px}}
@media(max-width:1120px){.container{width:calc(100% - 48px)}.nav-list{gap:18px}.brand,.brand img{width:188px;flex-basis:188px}.header-inner{gap:20px;min-height:94px}.nav-list a{font-size:.76rem}.hero-layout{gap:35px;min-height:570px}.product-stage{min-height:410px}.hero-product{max-height:330px}.services-grid{gap:14px}.service-body{padding:21px 17px}.about-layout{gap:65px}.page-layout{gap:45px}.footer-layout{gap:25px}}
@media(max-width:900px){.header-inner{min-height:88px;position:relative}.brand,.brand img{width:188px;flex-basis:188px}.menu-button{display:flex}.site-nav{display:none;position:absolute;left:-24px;right:-24px;top:100%;background:var(--deep);padding:16px 24px 26px;border-top:1px solid #ffffff24;box-shadow:0 12px 20px #0002}.site-nav.is-open{display:block}.nav-list{display:block}.nav-list a{font-size:.94rem;min-height:49px;width:100%;border-bottom:1px solid #ffffff12}.nav-list .nav-cta{margin-top:12px;width:auto}.hero-layout{padding-block:50px;gap:30px;min-height:560px}.hero h1{font-size:3.1rem}.hero-intro{font-size:.96rem}.hero .actions{gap:12px}.hero .button{padding-inline:18px;font-size:.8rem}.product-stage{min-height:365px;border-radius:130px 130px 10px 10px;padding-inline:15px}.hero-product{max-height:290px}.stage-caption{display:block}.stage-caption span{display:block;margin-top:5px}.trust-inner{padding-block:20px;gap:15px}.trust-item{gap:9px}.trust-item strong{font-size:.76rem}.trust-item small{font-size:.67rem}.trust-item svg{width:22px}.services-grid{grid-template-columns:1fr 1fr;gap:22px}.service-picture{height:210px}.service-body{padding:24px}.section{padding-block:65px}.section-head{gap:30px}.about-layout{gap:40px}.quote-layout{gap:35px}.footer-layout{grid-template-columns:1.2fr 1fr;gap:35px}.page-layout{grid-template-columns:minmax(0,1fr) 240px;gap:35px}.sidebar{padding:21px}.contact-grid{grid-template-columns:1fr}}
@media(max-width:640px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.header-inner{min-height:80px}.brand,.brand img{width:173px;flex-basis:173px}.site-nav{left:-20px;right:-20px;padding-inline:20px}.hero-layout{grid-template-columns:1fr;gap:34px;padding-block:38px 36px}.hero h1{font-size:clamp(2.5rem,10.5vw,3.25rem);margin-bottom:21px}.hero .eyebrow{font-size:.63rem;letter-spacing:.14em;margin-bottom:21px}.hero-intro{font-size:.94rem;line-height:1.75;margin-bottom:25px}.hero .actions{flex-wrap:nowrap;gap:10px}.hero .button{font-size:.75rem;padding-inline:16px;gap:11px;flex:1;min-height:50px}.hero-note{font-size:.69rem;margin-top:20px}.product-stage{width:100%;max-width:430px;min-height:330px;margin-inline:auto;border-radius:140px 140px 10px 10px;padding-top:18px}.hero-product{height:280px;max-height:none;width:100%;max-width:355px}.stage-caption{display:flex;padding:13px 3px 0}.stage-caption strong{font-size:.74rem}.stage-caption span{font-size:.57rem;margin:0}.product-number{font-size:.55rem;top:23px;right:17px}.trust-inner{grid-template-columns:1fr;padding-block:15px;gap:0}.trust-item,.trust-item:first-child,.trust-item:last-child{justify-content:flex-start;border:0;padding:10px 0;gap:13px}.trust-item strong{display:inline;font-size:.81rem}.trust-item small{display:block;font-size:.71rem}.trust-item svg{width:23px;height:23px}.section{padding-block:49px}.section-head{display:block;margin-bottom:27px}.section-head h2{font-size:2rem;margin-bottom:16px}.section-head p{font-size:.9rem}.section-head .eyebrow{font-size:.65rem;margin-bottom:13px}.services-grid{grid-template-columns:1fr;gap:19px}.service-picture{height:205px}.service-picture .contain{padding:22px}.service-body{padding:24px}.service-body h3{font-size:1.35rem}.service-body p{font-size:.88rem;margin-bottom:19px}.service-index{font-size:.63rem}.service-link{font-size:.85rem;min-height:32px}.wireless-band{display:block;padding:20px;font-size:.86rem;margin-top:22px}.wireless-band .text-link{margin-top:12px;white-space:normal}.about-layout{grid-template-columns:1fr;gap:30px}.established{font-size:6.8rem}.established-caption{margin-top:15px;padding-top:15px;max-width:none}.about-copy h2{font-size:2rem}.about-copy>p{font-size:.9rem}.quote-section{padding-block:49px}.quote-layout{grid-template-columns:1fr;gap:14px}.quote-label{max-width:none;margin-bottom:2px}.quote-section blockquote p{font-size:1.45rem}.cta-section{padding-block:46px}.cta-layout{display:block}.cta-layout h2{font-size:2rem}.cta-layout p{font-size:.91rem}.cta-layout .button{margin-top:25px}.site-footer{padding-top:39px;padding-bottom:64px}.footer-layout{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:28px}.footer-brand{grid-column:1/-1}.footer-about{max-width:330px}.footer-logo{width:190px;margin-bottom:17px}.footer-contact{grid-column:1/-1}.footer-bottom{display:block;font-size:.68rem;padding-block:21px}.footer-bottom a{display:inline-block;margin-top:8px}.mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--deep);border-top:1px solid #425667;z-index:15;padding:8px 14px calc(8px + env(safe-area-inset-bottom));gap:10px}.mobile-call a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:4px;font-size:.8rem;text-decoration:none;font-weight:700;color:white}.mobile-call a:last-child{background:#b9e0f7;color:var(--deep)}.mobile-call svg{width:16px;height:16px}.page-hero{padding-block:31px 38px}.breadcrumbs{font-size:.68rem;margin-bottom:23px}.page-hero h1{font-size:2.5rem}.page-intro{font-size:.93rem}.page-layout{grid-template-columns:1fr;padding-block:34px 50px;gap:30px}.sidebar{position:static}.article p,.article li{font-size:.94rem;line-height:1.85}.contact-grid{gap:16px}.contact-box{padding:22px}}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled){scroll-behavior:auto}html:not(.motion-enabled) *,html:not(.motion-enabled) *:before,html:not(.motion-enabled) *:after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.mobile-call,.sidebar,.cta-section,.skip{display:none}.container{width:100%}.hero,.page-hero{background:white;color:black}.hero-intro,.page-intro,.breadcrumbs{color:#333}.hero-layout,.page-layout{display:block}.product-stage{display:none}.page-hero{padding-block:20px}.page-layout{padding-block:20px}.article{max-width:100%}}

/* Product presentation inspired by Jablotron, in Trident's visual identity. */
.alarm-intro{background:#f3f5f6;border-bottom:1px solid var(--line);padding-block:30px 48px}.alarm-intro-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}.alarm-intro .breadcrumbs{color:var(--muted);margin-bottom:45px}.alarm-intro .eyebrow{color:var(--accent);font-size:.66rem}.alarm-intro h1{font-size:clamp(2.6rem,4.4vw,4rem);margin-bottom:23px}.alarm-lead{max-width:510px;color:var(--muted);font-size:1rem;margin-bottom:28px}.alarm-feature-photo{position:relative;min-width:0;background:white;border-radius:10px;overflow:hidden;align-self:stretch;display:flex;flex-direction:column;justify-content:center;margin-block:25px 0}.alarm-feature-photo img{width:100%;max-height:450px;object-fit:contain;padding:35px 30px 5px}.alarm-feature-photo>p{text-align:center;font-size:.65rem;letter-spacing:.16em;color:var(--muted);margin:10px 0 25px}.grade-badge{display:inline-flex;align-items:center;align-self:flex-start;background:#173b55;color:white;border-radius:3px;padding:6px 11px;letter-spacing:.11em;font-weight:700;font-size:.59rem;line-height:1.6}.alarm-feature-photo>.grade-badge{position:absolute;top:22px;left:22px}.product-jump{background:white;border-bottom:1px solid var(--line)}.product-jump>.container{display:flex;gap:35px;padding-block:12px;overflow:auto}.product-jump a{font-size:.8rem;text-decoration:none;white-space:nowrap;padding-block:9px;font-weight:700}.product-jump a:hover{color:var(--accent)}.keypad-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:0;gap:10px}.keypad-tabs button{flex:1;text-align:left;padding:18px 22px;border:0;background:#edf2f5;color:#425566;border-radius:7px 7px 0 0;font-size:.87rem;font-weight:700;border-bottom:3px solid transparent;min-height:74px}.keypad-tabs button span{display:block;font-size:.67rem;letter-spacing:.1em;font-weight:400;margin-top:3px}.keypad-tabs button[aria-selected=true]{background:var(--navy);color:white;border-bottom-color:#99cdee}.keypad-panel{display:grid;grid-template-columns:1fr 1fr;gap:65px;background:#f7f9fa;padding:42px;border:1px solid var(--line);border-top:0;border-radius:0 0 8px 8px}.keypad-panel[hidden]{display:none}.keypad-photo{background:white;border-radius:8px;display:flex;align-items:center;justify-content:center;min-height:420px}.keypad-photo img{width:100%;height:420px;object-fit:contain;padding:20px}.keypad-copy{padding-block:12px;align-self:center}.keypad-copy .model-code{margin:18px 0 14px}.keypad-copy h3{font-size:2.35rem;margin-bottom:22px}.keypad-copy>p{font-size:.91rem;color:var(--muted)}.keypad-copy .feature-list{margin-block:17px 23px}.keypad-copy .feature-list li{font-size:.82rem;padding-block:10px}.keypad-copy .text-link{white-space:normal;font-size:.8rem}.model-code{font-size:.72rem;letter-spacing:.1em;font-weight:700;color:var(--accent);margin-bottom:13px}.range-badge{display:inline-block;padding:6px 10px;background:#e4eaf0;color:#374e60;font-size:.58rem;letter-spacing:.07em;border-radius:3px;font-weight:700}.keypad-copy .product-note,.product-note{font-size:.78rem;line-height:1.7;color:var(--muted)}.grade-section{background:var(--paper);border-block:1px solid var(--line)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:white;display:flex;flex-direction:column}.product-photo{background:white;height:230px;position:relative;border-bottom:1px solid #e8edf1}.product-photo>.grade-badge{position:absolute;left:15px;top:15px;z-index:1}.product-photo img{width:100%;height:100%;object-fit:contain;padding:22px 20px 8px}.product-copy{padding:25px;display:flex;flex-direction:column;flex:1}.product-copy h3{font-size:1.3rem;letter-spacing:-.025em;margin-bottom:14px}.product-copy>p:not(.model-code){color:var(--muted);font-size:.85rem;line-height:1.75;margin-bottom:23px}.product-copy .text-link{font-size:.75rem;margin-top:auto;white-space:normal}.grade-note{max-width:950px;font-size:.83rem;line-height:1.8;margin:28px 0 0;color:var(--muted)}.app-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.app-photo{min-width:0;background:white;border-radius:12px;overflow:hidden}.app-photo img{width:100%;max-height:510px;object-fit:contain}.app-copy>p{font-size:.95rem;color:var(--muted);max-width:480px}.app-copy .eyebrow{font-size:.69rem;color:var(--accent)}.app-copy .product-note{font-size:.78rem;margin-bottom:24px}.app-copy .button{font-size:.82rem}.home-jablotron{background:#eef3f6;border-top:1px solid var(--line)}.partner-logo{width:175px;height:auto;margin-bottom:35px}.faq-section{padding-top:35px;padding-bottom:70px}.faq-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:65px}.faq-list details{border-bottom:1px solid var(--line);padding-block:20px}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{cursor:pointer;font-weight:700;font-size:.94rem;min-height:28px;padding-right:12px}.faq-list p{font-size:.9rem;line-height:1.8;color:var(--muted);margin:16px 0 0}.alarm-intro .actions .text-link{font-size:.8rem}
@media(max-width:1120px){.alarm-intro-layout{gap:35px}.keypad-panel{gap:35px;padding:30px}.keypad-copy h3{font-size:2rem}.keypad-photo{min-height:360px}.keypad-photo img{height:360px}.app-layout{gap:45px}.product-grid{gap:18px}.product-copy{padding:22px}}
@media(max-width:900px){.alarm-intro h1{font-size:2.8rem}.alarm-intro-layout{gap:25px}.alarm-intro .actions{gap:20px}.alarm-intro .breadcrumbs{margin-bottom:27px}.alarm-feature-photo img{padding:25px 10px 0;max-height:375px}.alarm-intro .eyebrow{font-size:.57rem}.keypad-panel{gap:25px;padding:25px}.keypad-copy h3{font-size:1.8rem}.keypad-photo{min-height:320px}.keypad-photo img{height:320px;padding:7px}.keypad-tabs button{padding:15px;font-size:.8rem}.product-grid{grid-template-columns:1fr 1fr}.app-layout{gap:35px}.app-copy h2{font-size:2.2rem}.faq-layout{gap:35px;grid-template-columns:1fr 1.5fr}.grade-badge{font-size:.55rem}.product-photo{height:220px}}
@media(max-width:640px){.alarm-intro{padding-block:22px 29px}.alarm-intro-layout{grid-template-columns:1fr;gap:25px}.alarm-intro h1{font-size:2.5rem}.alarm-intro .eyebrow{font-size:.59rem;letter-spacing:.12em}.alarm-lead{font-size:.91rem}.alarm-feature-photo{margin:0}.alarm-feature-photo img{height:300px;width:100%;padding:30px 25px 0}.alarm-feature-photo>p{font-size:.6rem;margin-bottom:18px}.alarm-feature-photo>.grade-badge{left:15px;top:15px}.alarm-intro .actions{gap:20px}.alarm-intro .actions .button{font-size:.81rem;padding-inline:18px}.alarm-intro .actions .text-link{font-size:.76rem}.product-jump>.container{gap:24px;width:100%;padding-inline:20px;padding-block:9px}.product-jump a{font-size:.74rem;min-height:44px}.keypad-tabs{gap:5px}.keypad-tabs button{font-size:.7rem;padding:12px 8px;min-width:0;line-height:1.45}.keypad-tabs button span{font-size:.59rem;letter-spacing:.06em;margin-top:6px}.keypad-panel{grid-template-columns:1fr;padding:18px;gap:21px}.keypad-photo{min-height:0}.keypad-photo img{height:280px;padding:15px}.keypad-copy{padding:0 5px 8px}.keypad-copy h3{font-size:2rem}.keypad-copy>p{font-size:.87rem}.keypad-copy .product-note{font-size:.74rem}.keypad-copy .feature-list li{font-size:.81rem}.product-grid{grid-template-columns:1fr;gap:20px}.product-photo{height:250px}.product-copy{padding:24px}.product-copy h3{font-size:1.4rem}.product-copy .text-link{min-height:38px;font-size:.79rem}.grade-note{font-size:.78rem;margin-top:23px}.app-layout{grid-template-columns:1fr;gap:25px}.app-photo img{max-height:360px}.app-copy h2{font-size:2rem}.app-copy>p{font-size:.89rem}.partner-logo{width:150px;margin-bottom:24px}.faq-layout{grid-template-columns:1fr;gap:15px}.faq-section{padding-top:20px;padding-bottom:40px}.faq-list summary{font-size:.88rem}.faq-list p{font-size:.86rem}.keypad-copy .model-code{font-size:.7rem}.grade-badge{font-size:.56rem}.range-badge{font-size:.54rem}}

/* Small-screen and WordPress toolbar refinements. */
body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(max-width:640px){.header-inner{gap:12px}.brand{flex:0 1 173px;min-width:0}.brand img{width:100%}.menu-button{flex:none}.site-footer{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}
@media(max-width:600px){body.admin-bar .site-header{top:0}}

/* Brighter Trident palette: electric blue, fresh turquoise and open white space. */
:root{--navy:#1654df;--deep:#103eac;--blue:#b6fff0;--accent:#1454d8;--ink:#15314c;--muted:#4a6378;--line:#d6e7ef;--paper:#f1f9fc;--mint:#a8f3d6}
.site-header{background:#ffffff;border-bottom:0;box-shadow:0 4px 24px #1759a51a}
.nav-list a{color:white}.nav-list a:hover,.nav-list a[aria-current=page]{color:#c5ffed}
.nav-list .nav-cta{background:var(--mint);color:#12394b;border-radius:30px;padding-inline:22px}
.nav-list .nav-cta:hover{background:#ceffea}.menu-button{border-color:#ffffff80;border-radius:24px}
.hero{background:#f8faff;color:var(--ink)}
.hero .eyebrow{color:#17617f}.hero .eyebrow:before{background:#16af9b}
.hero h1{color:#15314c}.hero h1 span{color:#1757d8}.hero-intro{color:#405d74}.hero-note{color:#506b80}
.button{background:#1655dc;color:white;border-radius:30px;box-shadow:0 7px 18px #1655dc1a}
.button:hover{background:#0c42bd;box-shadow:0 12px 25px #1655dc30}
.button-dark{background:#1655dc}.button-dark:hover{background:#0c42bd}
.button-outline{background:white;color:#1655dc;border-color:#a3bfe8;box-shadow:none}.button-outline:hover{background:#e7f1ff}
.product-stage{background:#ffffffd9;border:1px solid #fff;border-radius:150px 150px 28px 28px;box-shadow:0 22px 65px #18aaaf1a}
.product-stage:before{border-color:#59d2c5;border-style:dashed}.stage-caption{border-top-color:#c5e3e5}.stage-caption strong{color:#14617b}.product-number{color:#2c6c7c}
.trust-strip{background:white;border-bottom-color:#d5eceb}.trust-item{border-color:#cde5e7}.trust-item svg{color:#008577}
.service-card,.product-card{border-color:#dce9f0;border-radius:18px;box-shadow:0 6px 25px #1a598308}
.service-picture{background:#eef3fd;border-bottom-color:#dcebf0}
.service-index,.model-code{color:#1255cc}.service-link,.text-link{color:#1557ca}
.service-card:hover{box-shadow:0 18px 40px #1655dc1c;border-color:#80cfd7}
.wireless-band{background:#e8faf4;border-left-color:#14b794;border-radius:0 12px 12px 0}
.about-section{background:#f4f8ff;border-color:#e1ebf8}.established{color:#1655dc}.quote-label{color:#148475}
.home-jablotron{background:#f2f0fd;border-color:#cfece3}
.app-photo{box-shadow:0 14px 45px #1d689c0c;border:1px solid #e1edef}
.cta-section{background:#1857cb;color:white}.cta-layout p{color:#f0f8ff}
.cta-section .button{background:var(--mint);color:#12394b}.cta-section .button:hover{background:#d0ffee}
.site-footer{background:#f1f7fb;color:#456075}.footer-heading{color:#153c62}.footer-bottom{border-color:#cfdee8}.footer-bottom a{color:#1557ca}
.footer-list a:hover{color:#1255cc}.footer-brand>a{display:inline-block;background:#ffffff;padding:14px 20px;border-radius:14px;margin-bottom:18px}.footer-logo{margin:0;width:190px}
.page-hero{background:#1857cb}.page-hero .eyebrow{color:#baffeb}.page-hero .breadcrumbs,.page-intro{color:#ecf7ff}
.sidebar,.contact-box{background:#f1f8ff;border-color:#d6e7f8;border-radius:15px}
.alarm-intro{background:#f8faff;border-color:#d1ebe5}
.alarm-intro h1{color:#1653cd}.alarm-feature-photo{border:1px solid #d9eeeb;border-radius:25px;box-shadow:0 16px 50px #158d9d12}
.grade-badge{background:#075d56;color:#fff;border-radius:20px;padding:7px 12px}.range-badge{background:#e5efff;color:#1b4a91;border-radius:16px}
.product-jump{border-color:#d8eaf0}.product-jump a{color:#315c83}.product-jump a:hover{color:#1255cc}
.keypad-tabs button{background:#eef5fc;color:#355675}.keypad-tabs button[aria-selected=true]{background:#1655dc;border-bottom-color:#61e2c2}
.keypad-panel{background:#f4f7fe;border-color:#cfe2ed;border-radius:0 0 20px 20px}.keypad-photo{border-radius:16px}
.grade-section{background:#f3f5fc;border-color:#d7e9ee}
.product-photo{border-color:#e3edf1}.product-copy .text-link{color:#1557ca}.feature-list svg{color:#008171}
.mobile-call{background:#fff;border-color:#bddbe8;box-shadow:0 -4px 20px #1655dc0c}.mobile-call a{color:#174568}.mobile-call a:last-child{background:#1655dc;color:#fff;border-radius:24px}
.motion-toggle{border:1px solid #b5cde0;background:white;color:#174568;min-height:44px;border-radius:24px;padding:8px 16px;font-size:.75rem;line-height:1.5}
.motion-toggle[hidden]{display:none}.footer-bottom{align-items:center;flex-wrap:wrap}.motion-toggle:hover{border-color:#1655dc;color:#1655dc}
@media(max-width:900px){.site-nav{background:#ffffff}}
@media(max-width:640px){.product-stage{border-radius:120px 120px 24px 24px}.footer-bottom{display:flex;gap:12px;align-items:center}.footer-bottom>span{flex-basis:100%}.footer-bottom a{margin:0}.motion-toggle{font-size:.7rem;margin-left:auto}}

/* Motion stays decorative and can be paused or disabled by system preference. */
@keyframes trident-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}
@keyframes trident-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes trident-ring{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.hero-product,.alarm-feature-photo img{animation:trident-float 7s ease-in-out infinite}
.alarm-feature-photo img{animation-delay:-2s}.product-stage:before{animation:trident-ring 45s linear infinite}
.hero-copy,.alarm-intro-layout>div:first-child{animation:trident-arrive .7s ease-out both}

.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
.service-picture img,.product-photo img,.app-photo img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.product-card{transition:transform .3s,box-shadow .3s,border-color .3s}
.nav-list a,.text-link{transition:color .2s,background .2s}.text-link svg,.button svg{transition:transform .25s}
@media(hover:hover) and (pointer:fine){.service-card:hover .service-picture img{transform:scale(1.055)}.product-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #1655dc17;border-color:#7bcfcb}.product-card:hover .product-photo img{transform:scale(1.06) rotate(-1deg)}.app-photo:hover img{transform:scale(1.035)}.text-link:hover svg,.button:hover svg{transform:translateX(4px)}}
html.motion-paused{scroll-behavior:auto}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important}.motion-paused .reveal-ready{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled){scroll-behavior:auto}html:not(.motion-enabled) *,html:not(.motion-enabled) *:before,html:not(.motion-enabled) *:after{animation:none!important;transition:none!important}html:not(.motion-enabled) .reveal-ready{opacity:1;transform:none}}
@media print{.motion-toggle{display:none}.reveal-ready{opacity:1;transform:none}.hero,.page-hero{background:white;color:black}}

/* Solid colours and the blue-on-white letterhead logo treatment. */
:root{--mint:#e7e0ff;--blue:#dce8ff}
.site-header{color:#15314c;border-bottom:1px solid #e0e7f3;box-shadow:0 4px 22px #123a7710}
.brand{flex-basis:244px;max-width:244px;padding-block:12px}.logo-mark{display:block;position:relative;aspect-ratio:364/79;overflow:hidden;width:100%}.logo-mark img{width:100%;height:auto;filter:brightness(.54) saturate(2.3)}
.nav-list a{color:#23446b}.nav-list a:hover,.nav-list a[aria-current=page]{color:#1655dc}.nav-list .nav-cta{background:#1655dc;color:white}.nav-list .nav-cta:hover{background:#1046b7;color:white}.nav-list .nav-cta[aria-current=page]{color:white}
.menu-button{color:#174568;border-color:#c8d7ee;background:#f4f7ff}
.footer-brand>a{display:block;max-width:244px;padding:0;background:transparent;border-radius:0;margin:0 0 24px}.footer-logo{width:100%}
.hero,.alarm-intro,.page-hero{position:relative;overflow:hidden;isolation:isolate}
.hero{background:#fafbff}.alarm-intro{background:#f8faff}.page-hero{background:#eef3ff;color:#17365f}.page-hero .eyebrow{color:#1957bc}.page-hero .breadcrumbs,.page-hero .page-intro{color:#405d74}
.hero-layout,.alarm-intro-layout,.page-hero>.container{position:relative;z-index:1}.product-stage{background:#fff;border-color:#dce6f4}.site-footer{background:#f5f7fc}.wireless-band{background:#f0edfc;border-left-color:#8b65d8}.grade-badge{background:#1857a5}.product-stage:before{border-color:#ae96e5}
.brand-swirls{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible;opacity:.4}.brand-swirls path{fill:none;stroke-width:1.4;transform-origin:center;animation:trident-swirl 22s ease-in-out infinite alternate}.brand-swirls .swirl-blue{stroke:#6a9bdf}.brand-swirls .swirl-violet{stroke:#af77d1;animation-duration:29s;animation-delay:-8s}
@keyframes trident-swirl{from{transform:translate(-12px,-8px) rotate(-3deg)}to{transform:translate(20px,12px) rotate(3deg)}}
.enquiry-section{margin-top:10px;padding:30px;border:1px solid #d8e3f1;background:#fff;border-radius:18px}.article .enquiry-section h2{margin-top:0}.enquiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}.enquiry-grid p{margin:0}.enquiry-wide{grid-column:1/-1}.enquiry-section label{display:block;font-weight:700;color:#23446b;font-size:.87rem}.enquiry-section input:not([type=submit]),.enquiry-section select,.enquiry-section textarea{width:100%;max-width:100%;border:1px solid #b8cbe2;border-radius:8px;background:#fbfcff;color:#15314c;padding:12px 13px;margin-top:6px;min-height:48px;font-size:16px}.enquiry-section textarea{min-height:150px;resize:vertical}.enquiry-section input[type=submit]{border:0;border-radius:30px;background:#1655dc;color:#fff;font-weight:700;padding:15px 28px;min-height:52px;margin-top:22px}.enquiry-section .form-note{font-size:.78rem;color:#53697c;margin:15px 0 0;line-height:1.65}.enquiry-section .wpcf7-not-valid-tip{font-size:.8rem;color:#a51833}.enquiry-section .wpcf7-response-output{margin:20px 0 0;padding:14px;border-radius:8px}.enquiry-section .wpcf7-spinner{vertical-align:middle}.enquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:1120px){.brand{flex-basis:210px;max-width:210px}.brand img{width:100%}}
@media(max-width:900px){.site-nav{background:#fff;border-color:#e1e8f2}.nav-list a{border-color:#e1e8f2}.nav-list .nav-cta{display:flex;width:max-content}.brand{flex:0 1 210px}}
@media(max-width:640px){.brand{flex:0 1 180px;max-width:180px;padding-block:12px}.brand img{width:100%}.footer-brand>a{max-width:230px}.enquiry-section{padding:20px}.enquiry-grid{grid-template-columns:1fr;gap:15px}.enquiry-section input[type=submit]{width:100%}.brand-swirls{opacity:.32;width:180%;left:-40%}}

/* Every page surface carries the same lightweight moving brand curves. */
:where(.swirl-surface){position:relative;isolation:isolate}
.swirl-surface>.brand-swirls{inset:0;width:100%;height:100%;z-index:-1;opacity:.65;overflow:hidden;pointer-events:none}
.swirl-surface>.brand-swirls path{stroke-width:1.6;transform-box:view-box;transform-origin:center;animation:trident-background-flow 16s ease-in-out infinite alternate;animation-play-state:paused}
.swirl-surface>.brand-swirls .swirl-violet{animation-duration:21s;animation-delay:-7s;animation-direction:alternate-reverse}
.swirl-surface.swirls-in-view>.brand-swirls path{animation-play-state:running}
.site-header>.brand-swirls,.sidebar>.brand-swirls,.contact-box>.brand-swirls,.enquiry-section>.brand-swirls,.keypad-panel>.brand-swirls{opacity:.32}
.cta-section>.brand-swirls .swirl-blue{stroke:#c5deff}.cta-section>.brand-swirls .swirl-violet{stroke:#e3cdff}
@keyframes trident-background-flow{from{transform:translate(-55px,-25px) rotate(-4deg) scale(1.05)}to{transform:translate(65px,30px) rotate(4deg) scale(1.12)}}
@media(max-width:640px){.swirl-surface>.brand-swirls{width:100%;left:0}.swirl-surface>.brand-swirls path{stroke-width:1.2}}
@media print{.brand-swirls{display:none}}
.site-header .brand-swirls,.trust-strip .brand-swirls{display:none}

/* A quiet product display keeps the floating keypad as the focal point. */
.product-stage{background:#fff;border:1px solid #e4e9f1;border-radius:20px;box-shadow:0 18px 48px #15314c0a;min-height:450px;padding:25px 28px 22px;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:18px;align-items:center;justify-content:stretch;justify-items:center}
.product-stage:before{content:none;display:none;animation:none}
.product-stage .product-number{position:static;justify-self:start;color:#68788a;font-size:.64rem;letter-spacing:.15em;line-height:1.5}
.product-stage .hero-product{width:100%;height:320px;max-height:320px;max-width:410px;filter:drop-shadow(0 14px 12px #152b4314)}
.product-stage .stage-caption{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #e9edf3;padding:16px 0 0}
.product-stage .stage-caption strong{color:#25405b;font-size:.7rem;letter-spacing:.08em;line-height:1.5}
.product-stage .stage-caption span{color:#758294;font-size:.58rem;letter-spacing:.08em;line-height:1.5;margin:0}
@media(max-width:1120px) and (min-width:641px){.product-stage{min-height:390px;padding:22px;gap:15px}.product-stage .hero-product{height:270px;max-height:270px}.product-stage .stage-caption{display:block}.product-stage .stage-caption span{display:block;margin-top:5px}}
@media(max-width:640px){.product-stage{min-height:0;max-width:430px;border-radius:16px;padding:21px 20px 18px;gap:16px}.product-stage .hero-product{height:260px;max-height:260px;max-width:340px}.product-stage .product-number{font-size:.57rem}.product-stage .stage-caption{display:block;padding-top:14px}.product-stage .stage-caption strong{font-size:.67rem}.product-stage .stage-caption span{display:block;margin-top:4px}}

/* Interactive product carousel: original manufacturer models, simple controls. */
.product-stage.device-carousel{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:24px;min-height:0;max-width:100%}
.device-carousel [hidden]{display:none!important}
.device-topline{display:flex;justify-content:space-between;align-items:center;gap:14px;color:#68788a;font-size:.61rem;line-height:1.5;letter-spacing:.13em;font-weight:700}
.device-mode{color:#1655dc;letter-spacing:.03em;background:#eff4ff;border-radius:20px;padding:6px 9px}
.device-view{position:relative;width:100%;height:310px;margin-block:8px 0}
.device-view model-viewer{position:absolute;inset:0;display:block;width:100%;height:100%;background:transparent;--poster-color:transparent;--progress-bar-color:#1655dc;--progress-bar-height:0;opacity:0;touch-action:pan-y}
.device-poster{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 12px #152b4314)}
.model-ready .device-poster{opacity:0;pointer-events:none}.model-ready .device-view model-viewer{opacity:1}.model-interactive .device-view model-viewer{pointer-events:auto}
.model-failed .device-view model-viewer{display:none}
.model-failed .device-hint,.model-failed .device-tools,.model-failed .device-mode{display:none}
.device-carousel .device-hint{font-size:.7rem;text-align:center;color:#65758a;margin:0 0 6px;line-height:1.5}
.device-hint span{padding-inline:5px}
.device-tools{display:flex;justify-content:center;gap:8px;margin:0 0 15px}
.device-tools button{font-size:.67rem;min-height:38px;padding:7px 12px;background:#f7f9fc;border:1px solid #e2e8f0;border-radius:7px;color:#415a75}
.device-tools button:hover{background:#eef3ff;color:#1655dc;border-color:#c1d2f5}
.device-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;border-top:1px solid #e9edf3}
.device-code{display:block;color:#1655dc;font-size:.62rem;font-weight:700;letter-spacing:.1em;line-height:1.4;margin-bottom:5px}
.device-carousel .device-name{font-size:1.16rem;line-height:1.25;letter-spacing:-.025em;margin:0 0 5px;color:#183851}
.device-carousel .device-description{font-size:.7rem;line-height:1.5;color:#6b7b8e;margin:0;max-width:230px}
.device-navigation{display:flex;align-items:center;gap:10px;flex:none}
.device-arrow{display:grid;place-items:center;width:42px;height:42px;padding:10px;border:1px solid #d5dfed;background:#fff;border-radius:50%;color:#164cbd}
.device-arrow:hover{background:#1655dc;color:white;border-color:#1655dc}
.device-arrow svg{display:block;width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}
.device-count{font-size:.64rem;letter-spacing:.03em;color:#718196;white-space:nowrap}
@media(max-width:1120px) and (min-width:641px){.product-stage.device-carousel{padding:18px}.device-view{height:270px}.device-footer{display:block}.device-navigation{justify-content:flex-end;margin-top:12px}.device-carousel .device-description{max-width:none}}
@media(max-width:640px){.product-stage.device-carousel{padding:18px;max-width:430px}.device-topline{font-size:.55rem;gap:8px}.device-mode{padding:5px 7px}.device-view{height:280px}.device-hint{font-size:.63rem}.device-tools{gap:6px;margin-bottom:12px}.device-tools button{min-height:44px;padding:8px 10px}.device-footer{display:block;padding-top:16px}.device-navigation{justify-content:space-between;margin-top:15px}.device-arrow{width:44px;height:44px}.device-carousel .device-name{font-size:1.2rem}.device-carousel .device-description{font-size:.73rem;max-width:none}.device-count{font-size:.69rem}}

/* Shared page treatment: one swirl background, clean content panels. */
:root{--page-background:#fafbff;--panel-border:#e4e9f1;--panel-shadow:0 18px 48px #15314c0a}
body,.hero,.alarm-intro,.page-hero,.page-content,main>.section,main>.quote-section,main.error-page,.site-footer{background:var(--page-background)}
.page-hero,.alarm-intro{border-bottom:1px solid var(--panel-border)}
.page-hero .eyebrow,.alarm-intro .eyebrow{color:#17617f}
.page-hero h1,.alarm-intro h1{color:var(--ink)}
.alarm-intro h1 span{color:#1757d8}
.page-hero .breadcrumbs,.page-hero .page-intro{color:#405d74}
.page-content{position:relative;isolation:isolate}
.page-content>.page-layout{position:relative;z-index:1}
.alarm-intro{padding-block:54px 65px}
.alarm-intro-layout{grid-template-columns:1.02fr 1fr;gap:65px}
.alarm-intro .breadcrumbs{margin-bottom:30px}
.alarm-intro .device-carousel{width:100%;align-self:center}
.sidebar,.contact-box,.enquiry-section,.keypad-panel,.app-photo{background:#fff;border-color:var(--panel-border);box-shadow:var(--panel-shadow)}
.sidebar,.contact-box,.enquiry-section,.app-photo{border-radius:20px}
.keypad-photo,.product-photo,.service-picture{background:#fff;overflow:hidden}
.hero-product{animation:none;transform:none;transition:none}
.service-card:hover .service-picture img,.product-card:hover .product-photo img,.app-photo:hover img{transform:none}
@media(max-width:1120px){.alarm-intro-layout{gap:35px}}
@media(max-width:900px){.alarm-intro-layout{gap:30px}.alarm-intro{padding-block:42px 50px}}
@media(max-width:640px){.alarm-intro-layout{grid-template-columns:1fr;gap:30px}.alarm-intro{padding-block:28px 40px}.alarm-intro .breadcrumbs{margin-bottom:24px}.sidebar,.contact-box,.enquiry-section,.app-photo{border-radius:16px}.alarm-intro .device-carousel{justify-self:center}}

/* Readable type and a footer logo aligned by the visible artwork. */
html{font-size:17px}
body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:500}
h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:700}
a{font-weight:600}
.nav-list a{font-size:.88rem;font-weight:650}
.button{font-size:.94rem;font-weight:700}
.article p,.article li,.section-head p,.about-copy>p,.app-copy>p,.keypad-copy>p{font-size:1rem;font-weight:500;color:#344e65}
.hero-intro,.alarm-lead,.page-intro{font-weight:500;color:#344e65}
.service-body p,.product-copy>p:not(.model-code),.sidebar p,.faq-list p{font-size:.94rem;color:#344e65}
.service-link,.text-link,.product-copy .text-link,.keypad-copy .text-link,.sidebar-links a{font-size:.88rem;font-weight:650}
.feature-list li,.keypad-copy .feature-list li{font-size:.9rem}
.breadcrumbs{font-size:.78rem;font-weight:500}
.hero-note,.grade-note,.product-note,.keypad-copy .product-note{font-size:.84rem;color:#40566c}
.footer-about,.footer-list li,.footer-address{font-size:.88rem;font-weight:500;line-height:1.8}
.footer-list a{font-weight:600}.footer-heading{font-size:.81rem}.footer-bottom{font-size:.76rem}
.footer-brand .logo-mark{aspect-ratio:327/70}
.footer-brand .footer-logo{width:111.315%;max-width:none;transform:translate(-5.4945%,-7.5%)}
.device-topline{font-size:.65rem}.device-carousel .device-hint{font-size:.75rem;color:#42576d}
.device-tools button{font-size:.73rem;font-weight:600;color:#344e65}
.device-code,.device-count{font-size:.7rem}.device-count{color:#42576d}
.device-carousel .device-description{font-size:.79rem;color:#42576d}
.keypad-tabs button{font-size:.92rem}.keypad-tabs button span{font-size:.74rem}
.contact-box p,.contact-box address,.contact-box a,.enquiry-section label{font-size:.95rem}
.enquiry-section .form-note{font-size:.84rem;color:#40566c}
@media(max-width:1120px){.nav-list{gap:18px}.nav-list a{font-size:.8rem}}
@media(max-width:900px){.nav-list a{font-size:1rem}}
@media(max-width:640px){.hero h1{font-size:2.65rem}.alarm-intro h1,.page-hero h1{font-size:2.35rem}.hero .button,.alarm-intro .actions .button{font-size:.88rem}.hero-intro,.alarm-lead,.page-intro{font-size:1rem}.article p,.article li{font-size:1rem}.service-body p,.product-copy>p:not(.model-code),.sidebar p,.faq-list p{font-size:.94rem}.text-link,.product-copy .text-link,.keypad-copy .text-link{white-space:normal}.keypad-tabs button{font-size:.72rem;padding:12px 6px}.keypad-tabs button span{font-size:.65rem}.device-topline{font-size:.56rem;gap:6px}.device-mode{padding:5px 6px}.device-carousel .device-hint{font-size:.67rem}.device-tools button{font-size:.73rem;padding-inline:9px}.device-carousel .device-description{font-size:.8rem}.footer-list li,.footer-address,.footer-about{font-size:.88rem}.footer-bottom{font-size:.76rem}.mobile-call a{font-size:.83rem}}

/* Standards links use the official technology logo and CSS validator badge. */
.validation-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:30px}
.validation-links a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.76rem;font-weight:600;color:#344e65}
.validation-links img{width:auto;flex:none;object-fit:contain}
.validation-links a:hover span{text-decoration:underline}
@media(max-width:640px){.validation-links{gap:12px 20px}.validation-links a{font-size:.74rem}}

/* Crossfade decoded photographs into the interactive model without a hard swap. */
.device-view model-viewer,.device-poster{transition:opacity .5s ease;will-change:opacity}
.device-view model-viewer{pointer-events:none}
.device-poster{position:absolute;inset:0;opacity:1}
.device-changing .device-view model-viewer,.device-changing .device-poster{opacity:0;pointer-events:none;transition-duration:.22s}
.product-jump .brand-swirls{display:none!important}
.product-jump{background:#fff}
.floating-product{display:block;width:100%;height:100%}
.alarm-page .floating-product img{mix-blend-mode:multiply}
@keyframes product-drift{0%,100%{transform:translateY(3px)}50%{transform:translateY(-7px)}}
@keyframes product-hover-bounce{0%,100%{transform:translateY(0)}35%{transform:translateY(-13px)}65%{transform:translateY(3px)}82%{transform:translateY(-4px)}}
.cctv-stage{margin:0;background:#fff;border:1px solid var(--panel-border);border-radius:24px;padding:25px;box-shadow:var(--panel-shadow);min-width:0}
.cctv-stage>img{width:100%;height:350px;object-fit:contain}
.cctv-stage figcaption{border-top:1px solid var(--panel-border);padding-top:20px}
.cctv-stage figcaption strong,.cctv-stage figcaption span{display:block}
.cctv-stage figcaption span{font-size:.79rem;color:#40566c;margin-top:6px}
.cctv-page .model-code{font-size:.64rem;overflow-wrap:anywhere;letter-spacing:.04em}
.cctv-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.cctv-benefits article{background:white;border:1px solid var(--panel-border);border-radius:16px;padding:28px}
.cctv-benefits h3{margin-block:18px 15px}
.cctv-benefits p{font-size:.94rem;color:#344e65;margin:0}
.recorder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.cctv-benefits{gap:15px}.cctv-benefits article{padding:22px}}
@media(max-width:640px){.cctv-stage{padding:18px;border-radius:18px}.cctv-stage>img{height:280px}.cctv-benefits,.recorder-grid{grid-template-columns:1fr}.cctv-page .alarm-intro h1{font-size:2.6rem}}

.hero .home-intro-line{display:block;text-transform:none;letter-spacing:.02em;font-size:.82rem;line-height:1.65;max-width:490px}.hero .home-intro-line:before{content:none}

.footer-addresses{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid var(--panel-border);padding-top:26px}.footer-addresses strong{display:block;font-size:.82rem;color:#1757d8;margin-bottom:9px}.footer-addresses .footer-address{margin:0}@media(max-width:480px){.footer-addresses{grid-template-columns:1fr;gap:24px}}

.fire-stage>img{height:320px}.fire-page .panel-photo{height:340px}.fire-page .panel-photo img{padding:22px;object-fit:contain}.fire-page .product-copy .feature-list{margin-top:0}.detector-pair{display:flex;align-items:center;gap:16px;border-top:1px solid var(--panel-border);padding-block:16px;margin-bottom:18px;font-size:.82rem;color:#40566c}.detector-pair img{width:84px;height:66px;object-fit:contain;flex:none}.fire-page .app-photo{padding:24px}@media(max-width:640px){.fire-stage>img{height:250px}.fire-page .panel-photo{height:285px}.detector-pair{gap:12px}.detector-pair img{width:70px;height:55px}}

/* Frame the original studio photograph around the panel, retaining its details. */
.fire-page .advanced-photo{display:grid;place-items:center}.fire-page .advanced-photo img{width:320px;height:320px;max-width:100%;padding:0;clip-path:polygon(14.1% 14.4%,85.8% 13.7%,86.3% 14.5%,86.3% 88.3%,85.1% 90.2%,16.2% 90.8%,13.7% 89.4%,13.7% 16%)}@media(max-width:640px){.fire-page .advanced-photo img{width:280px;height:280px}}

.device-poster{filter:none}

/* Expanded product ranges and a single grouped fob display. */
.fob-collection{margin:0;background:#fff;border:1px solid var(--panel-border);border-radius:24px;padding:32px;box-shadow:var(--panel-shadow)}
.fob-lineup{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px 20px}.fob-item{text-align:center;min-width:0}.fob-item img{width:100%;height:145px;object-fit:contain}.fob-item span{display:block;font-size:.72rem;font-weight:650;margin-top:8px}.fob-collection figcaption{border-top:1px solid var(--panel-border);margin-top:28px;padding-top:22px}.fob-collection figcaption p{font-size:.94rem;color:#344e65;max-width:850px}.fob-collection .text-link{display:inline-block;margin-right:24px}.product-jump .container{flex-wrap:wrap;row-gap:12px}.fire-page .model-code{overflow-wrap:anywhere}
@media(max-width:640px){.fob-collection{padding:20px}.fob-lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.fob-item img{height:125px}}
.model-open{display:block;border:1px solid #c4d2e3;background:#fff;color:#1757d8;border-radius:10px;padding:10px 16px;font:inherit;font-size:.84rem;font-weight:650;cursor:pointer;margin:18px 0}.model-open:hover{background:#edf3ff}.product-model-dialog{width:min(740px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:28px;border:1px solid #dce3ec;border-radius:24px;color:#17384b;overflow:auto;background:#fff;box-shadow:0 18px 70px #14344d33}.product-model-dialog::backdrop{background:#102d49aa}.model-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.model-dialog-head h2{font-size:1.6rem;margin:0}.model-dialog-head .eyebrow{font-size:.65rem;margin-bottom:10px}.model-close{border:0;background:#edf3ff;border-radius:50%;width:44px;height:44px;flex:none;font-size:1.8rem;color:#17384b;cursor:pointer}.model-disclaimer,.model-load-status{font-size:.78rem;color:#40566c}.product-model-host{height:min(420px,48dvh);min-height:220px}.product-model-host model-viewer{display:block;width:100%;height:100%;opacity:0;transition:opacity .5s ease}.product-model-host model-viewer.is-loaded{opacity:1}.model-dialog-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.75rem}.model-dialog-tools span{margin-right:auto}.model-dialog-tools button{border:1px solid #dce3ec;background:#f6f9fc;border-radius:8px;color:#344e65;padding:10px 14px;min-height:44px;cursor:pointer;font:inherit}body:has(.product-model-dialog[open]){overflow:hidden}@media(max-width:640px){.product-model-dialog{padding:20px}.model-dialog-head h2{font-size:1.3rem}.model-dialog-tools span{width:100%}}@media(prefers-reduced-motion:reduce){.product-model-host model-viewer{transition:none}}

/* Keep both locations together at the right end of the desktop footer. */
.footer-layout{grid-template-columns:minmax(180px,1.1fr) minmax(115px,.7fr) minmax(115px,.7fr) minmax(125px,.8fr) minmax(320px,1.9fr);gap:24px}.footer-layout .footer-addresses{grid-column:auto;border:0;padding:0;gap:22px;margin:0;align-self:start}.footer-layout .footer-addresses strong{margin-bottom:14px}.footer-layout .footer-address{font-size:.82rem}.footer-brand .logo-mark{max-width:100%}.product-model-host{background:#f4f6f8;border-radius:16px}
@media(max-width:1120px){.footer-layout{grid-template-columns:1.1fr .8fr .8fr;gap:30px}.footer-layout .footer-brand{grid-column:1}.footer-layout .footer-contact{grid-column:1}.footer-layout .footer-addresses{grid-column:2/4;justify-self:end;min-width:320px}}
@media(max-width:640px){.footer-layout{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-layout .footer-brand,.footer-layout .footer-contact,.footer-layout .footer-addresses{grid-column:1/-1}.footer-layout .footer-addresses{width:100%;min-width:0;justify-self:stretch;grid-template-columns:1fr 1fr}.footer-layout .footer-address{font-size:.86rem}}
@media(max-width:480px){.footer-layout .footer-addresses{grid-template-columns:1fr}}

/* Responsive sizing: comfortable reading, proportional media and touch targets. */
.hero-layout,.alarm-intro-layout,.about-layout,.app-layout,.keypad-panel,.faq-layout,.page-layout{min-width:0}
.hero-layout>*,.alarm-intro-layout>*,.about-layout>*,.app-layout>*,.keypad-panel>*,.faq-layout>*,.page-layout>*{min-width:0}
.button{max-width:100%;text-align:center}
.actions>*{min-width:0}
.service-picture img{object-fit:contain;padding:20px}
.device-arrow{width:46px;height:46px}
.device-tools{flex-wrap:wrap}
.device-tools button,.model-open,.keypad-tabs button{min-height:46px}
.device-navigation{gap:12px}
.model-open{align-self:flex-start}
.product-copy .text-link,.sidebar-links a,.footer-list a{min-height:44px;align-items:center}
.footer-list a{display:inline-flex}
.footer-list li{margin-bottom:2px}
.device-hint span{display:inline-block}
.enquiry-grid>*{min-width:0}
.enquiry-section select{text-overflow:ellipsis}
.article figure,.article .wp-caption{max-width:100%;margin-inline:0}
.article video,.article iframe{max-width:100%}
.article iframe[src*="youtube"],.article iframe[src*="vimeo"]{width:100%;height:auto;aspect-ratio:16/9}
.site-nav{overscroll-behavior:contain}
html{scroll-padding-top:125px}

@media(max-width:1120px){
  .hero h1{font-size:clamp(2.35rem,4.7vw,3.3rem)}
  .alarm-intro h1,.cctv-page .alarm-intro h1{font-size:clamp(2.25rem,4.3vw,3.1rem)}
  .hero-layout,.alarm-intro-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
  .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .service-picture{height:230px}
  .hero .button{font-size:.9rem;padding-inline:20px}
  .device-topline{font-size:.66rem}
  .device-carousel .device-hint{font-size:.75rem}
  .device-tools button{font-size:.8rem}
  .cctv-stage>img{height:300px}
}

@media(max-width:1040px){
  html{scroll-padding-top:105px}
  .header-inner{min-height:86px;position:relative}
  .menu-button{display:flex;min-height:46px}
  .site-nav{display:none;position:absolute;left:-24px;right:-24px;top:100%;padding:14px 24px 24px;background:#fff;border-top:1px solid #e1e8f2;box-shadow:0 12px 20px #0002;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overflow-y:auto}
  .site-nav.is-open{display:block}
  .nav-list{display:block}
  .nav-list a{width:100%;min-height:48px;font-size:1rem;border-bottom:1px solid #e1e8f2}
  .nav-list .nav-cta{display:flex;width:max-content;max-width:100%;margin-top:12px}
  .header-inner .brand{flex:0 1 210px;max-width:210px}
  .site-header:has(.site-nav.is-open){z-index:30}
}

@media(max-width:980px){
  .page-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:48px 60px;max-width:760px}
  .sidebar{position:static;padding:28px}
  .sidebar-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  .sidebar .button{width:auto;padding-inline:24px}
  .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-head{align-items:start;gap:28px}
  .section-head p{max-width:340px}
  .cctv-benefits{grid-template-columns:1fr;gap:20px}
  .cctv-benefits article{padding:28px}
  .cctv-benefits h3{margin-top:12px}
  .fob-lineup{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}
  .fob-item img{height:150px}
  .fob-item:last-child:nth-child(3n+1){grid-column:2}
}

@media(max-width:860px){
  .hero-layout,.alarm-intro-layout{grid-template-columns:minmax(0,1fr);max-width:660px;gap:36px;min-height:0;padding-block:44px 48px}
  .alarm-intro{padding:0}
  .hero h1{font-size:clamp(2.3rem,6.2vw,3.3rem);max-width:640px}
  .alarm-intro h1,.cctv-page .alarm-intro h1{font-size:clamp(2.2rem,5.6vw,3rem)}
  .hero-intro,.alarm-lead{max-width:620px;font-size:1.03rem;line-height:1.75}
  .hero .actions{flex-wrap:wrap;gap:12px}
  .hero .button{flex:0 1 auto;font-size:.94rem;min-height:52px}
  .hero-note{font-size:.82rem;line-height:1.7}
  .product-stage.device-carousel,.cctv-stage{width:100%;max-width:520px;justify-self:center;margin-inline:auto;padding:24px}
  .device-view{height:clamp(250px,62vw,340px)}
  .device-footer{display:flex;gap:20px;align-items:center}
  .device-info{min-width:0}
  .device-navigation{margin-top:0}
  .device-carousel .device-description{max-width:260px}
  .cctv-stage>img{height:clamp(240px,50vw,330px)}
  .trust-inner{grid-template-columns:1fr;padding-block:16px;gap:0;max-width:660px}
  .trust-item,.trust-item:first-child,.trust-item:last-child{justify-content:flex-start;border:0;padding:10px 0;gap:14px}
  .trust-item strong{font-size:.9rem}
  .trust-item small{font-size:.82rem}
  .trust-item svg{width:25px;height:25px}
  .section{padding-block:60px}
  .section-head{display:block;margin-bottom:30px}
  .section-head h2{max-width:640px;margin-bottom:18px}
  .section-head p{max-width:660px}
  .about-layout,.app-layout,.faq-layout,.quote-layout{grid-template-columns:1fr;gap:32px;max-width:660px}
  .app-photo{width:100%;max-width:520px;justify-self:center}
  .app-photo img{height:auto;max-height:440px;object-fit:contain}
  .app-copy>p,.about-copy h2{max-width:none}
  .quote-label{max-width:none}
  .keypad-panel{grid-template-columns:1fr;padding:28px;gap:24px}
  .keypad-photo{width:100%;max-width:500px;min-height:0;justify-self:center}
  .keypad-photo img{width:100%;height:clamp(260px,50vw,380px);object-fit:contain;padding:20px}
  .keypad-copy{padding:0}
  .keypad-copy h3{font-size:2rem}
  .keypad-tabs button{font-size:.88rem;padding:14px 12px;line-height:1.45}
  .keypad-tabs button span{font-size:.72rem}
  .cta-layout{display:block;max-width:660px}
  .cta-layout .button{margin-top:26px}
  .wireless-band{flex-wrap:wrap}
  .wireless-band .text-link{white-space:normal}
  .product-jump>.container{gap:8px 24px;padding-block:12px}
  .product-jump a{white-space:normal;font-size:.88rem;min-height:46px;display:flex;align-items:center}
  .footer-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .footer-layout .footer-brand{grid-column:1/-1}
  .footer-layout .footer-contact{grid-column:1/-1}
  .footer-layout .footer-addresses{grid-column:1/-1;width:100%;min-width:0;justify-self:stretch;gap:32px}
  .footer-about{max-width:480px}
  .footer-layout .footer-address{font-size:.9rem}
  .footer-bottom{gap:18px}
}

@media(max-width:640px){
  .container{width:calc(100% - 40px)}
  .header-inner{min-height:78px;gap:12px}
  .header-inner .brand{flex:0 1 180px;max-width:180px}
  .site-nav{left:-20px;right:-20px;padding-inline:20px;max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px - env(safe-area-inset-bottom))}
  .hero-layout,.alarm-intro-layout{padding-block:32px 40px;gap:30px}
  .hero h1{font-size:clamp(2.1rem,8.5vw,2.75rem);margin-bottom:22px}
  .alarm-intro h1,.cctv-page .alarm-intro h1,.page-hero h1{font-size:clamp(2rem,8vw,2.65rem)}
  .hero .home-intro-line{font-size:.79rem;line-height:1.65;margin-bottom:22px}
  .hero-intro,.alarm-lead,.page-intro{font-size:1rem}
  .product-stage.device-carousel,.cctv-stage{max-width:480px;padding:20px;border-radius:18px}
  .device-footer{display:block}
  .device-navigation{margin-top:18px;justify-content:space-between}
  .device-carousel .device-description{max-width:none;font-size:.85rem}
  .device-carousel .device-hint{font-size:.75rem;line-height:1.65}
  .device-topline{font-size:.62rem;gap:10px;flex-wrap:wrap}
  .device-tools button{font-size:.8rem;padding-inline:13px}
  .device-code,.device-count{font-size:.76rem}
  .device-carousel .device-name{font-size:1.28rem}
  .section,.quote-section{padding-block:46px}
  .section-head h2,.about-copy h2,.app-copy h2,.cta-layout h2{font-size:clamp(1.85rem,6.5vw,2.25rem)}
  .services-grid,.product-grid,.recorder-grid{grid-template-columns:1fr;gap:22px}
  .service-picture,.product-photo{height:clamp(220px,65vw,300px)}
  .product-copy,.service-body{padding:24px}
  .product-copy h3,.service-body h3{font-size:1.4rem}
  .service-body p,.product-copy>p:not(.model-code){font-size:1rem;line-height:1.75}
  .product-copy .text-link,.service-link{font-size:.9rem}
  .product-jump>.container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 40px);gap:4px 18px;padding:12px 0;overflow:visible}
  .product-jump a{font-size:.8rem;line-height:1.5;padding-block:10px}
  .keypad-panel{padding:20px;gap:22px}
  .keypad-copy h3{font-size:1.85rem}
  .keypad-copy>p{font-size:1rem}
  .keypad-copy .feature-list li{font-size:.9rem}
  .contact-grid{grid-template-columns:1fr}
  .page-layout{padding-block:34px 46px}
  .sidebar,.contact-box{padding:24px}
  .sidebar-links{grid-template-columns:1fr}
  .enquiry-section{padding:22px}
  .enquiry-grid{grid-template-columns:1fr;gap:22px}
  .enquiry-section input:not([type=submit]),.enquiry-section select,.enquiry-section textarea{font-size:17px}
  .fob-collection{padding:22px}
  .fob-lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}
  .fob-item:last-child:nth-child(3n+1){grid-column:auto}
  .fob-item img{height:clamp(120px,33vw,160px)}
  .fob-item span{font-size:.8rem;overflow-wrap:anywhere}
  .fob-collection .text-link{min-height:44px;margin-right:0;margin-bottom:6px}
  .fire-page .panel-photo{height:clamp(250px,68vw,320px)}
  .fire-page .advanced-photo img{width:280px;height:280px}
  .detector-pair{flex-wrap:wrap}
  .footer-layout{gap:28px 20px}
  .footer-layout .footer-addresses{gap:28px 20px}
  .footer-bottom>span{line-height:1.7}
  .mobile-call{padding-inline:max(14px,env(safe-area-inset-left));padding-bottom:calc(8px + env(safe-area-inset-bottom));min-height:64px}
  .mobile-call a{min-height:46px;font-size:.88rem}
  .site-footer{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
  .product-model-dialog{width:calc(100% - 24px);padding:20px;border-radius:18px}
  .model-dialog-head{gap:14px}
  .product-model-host{min-height:180px;height:min(340px,42dvh)}
  .model-dialog-tools{font-size:.85rem}
}

@media(max-width:480px){
  .hero .actions{display:grid;grid-template-columns:1fr;width:100%;gap:12px}
  .hero .actions .button{width:100%;font-size:.94rem;padding-inline:20px}
  .alarm-intro .actions{gap:16px;align-items:flex-start}
  .alarm-intro .actions .button{font-size:.94rem}
  .alarm-intro .actions .text-link{font-size:.9rem;min-height:44px;white-space:normal}
  .keypad-tabs{flex-direction:column;gap:6px;margin-bottom:8px;border:0}
  .keypad-tabs button{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:auto;text-align:left;font-size:.88rem;padding:12px 16px;border-radius:10px;min-height:54px}
  .keypad-tabs button span{margin:0;font-size:.72rem;letter-spacing:.03em;flex:none}
  .keypad-panel{border-top:1px solid var(--panel-border);border-radius:16px}
  .footer-layout .footer-addresses{grid-template-columns:1fr}
}

@media(max-width:360px){
  .container{width:calc(100% - 32px)}
  .site-nav{left:-16px;right:-16px;padding-inline:16px}
  .header-inner .brand{flex-basis:156px;max-width:156px}
  .menu-button{padding-inline:12px;gap:7px;font-size:.9rem}
  .hero h1{font-size:2.05rem}
  .product-stage.device-carousel,.cctv-stage{padding:18px}
  .device-view{height:245px}
  .device-topline{font-size:.58rem}
  .device-tools{gap:8px}
  .device-tools button{padding-inline:10px;font-size:.82rem}
  .product-copy,.service-body,.sidebar,.contact-box,.enquiry-section,.fob-collection{padding:20px}
  .product-jump>.container{width:calc(100% - 32px);gap:4px 14px}
  .keypad-panel{padding:16px}
  .keypad-photo img{height:250px;padding:14px}
  .footer-layout{gap:26px 16px}
  .footer-heading{font-size:.76rem}
}

@media(max-height:500px) and (max-width:1040px){
  .site-header{position:relative}
  .site-nav{max-height:calc(100dvh - 100px)}
  .product-model-dialog{padding:18px}
  .product-model-host{min-height:150px;height:45dvh}
}

/* The access range shares the product layout and retains natural image ratios. */
.access-tag-display{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:28px;background:#fff;border:1px solid var(--panel-border);border-radius:20px;box-shadow:var(--panel-shadow)}
.access-tag-display figure{margin:0;min-width:0;text-align:center}
.access-tag-display img{width:100%;height:180px;object-fit:contain}
.access-tag-display figcaption{font-size:.8rem;line-height:1.5;margin-top:12px}
.access-page .page-layout{padding-bottom:0;padding-top:12px;width:100%}
.access-page .model-code{overflow-wrap:anywhere}
.access-stage>img{max-width:360px;margin-inline:auto}
@media(max-width:860px){.access-tag-display{width:100%;max-width:520px;justify-self:center}}
@media(max-width:640px){.access-tag-display{padding:20px;gap:12px}.access-tag-display img{height:130px}.access-tag-display figcaption{font-size:.74rem}}

/* Ecosystem overview and AR links beside the relevant products. */
.ecosystem-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ecosystem-card{padding:26px;background:#fff;border:1px solid var(--panel-border);border-radius:20px}
.ecosystem-card img{width:100%;height:170px;object-fit:contain;margin-bottom:22px}
.ecosystem-card h3{font-size:1.3rem;line-height:1.2;margin-bottom:16px}
.ecosystem-card p{font-size:.94rem;color:#344e65;margin-bottom:0}
#ecosystem>.container>.text-link{min-height:46px;margin-top:12px;white-space:normal}
.comfort-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ar-intro{padding:24px 28px;border:1px solid #d3dff2;border-radius:16px;background:#f0f4ff;margin-bottom:28px}
.ar-intro p{max-width:900px;margin:10px 0 12px;font-size:.94rem;color:#344e65}
.ar-intro .text-link{white-space:normal;min-height:44px}
.ar-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.ar-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid #c8d7ee;border-radius:10px;background:#f2f6ff;color:#174aaf;font-size:.84rem;font-weight:650;padding:10px 14px;text-decoration:none;line-height:1.5;text-align:center}
.ar-link:hover{background:#e4edff;border-color:#98b7ed}
.device-carousel .device-ar{align-self:center;margin:0 0 18px;font-size:.8rem}
@media(max-width:980px){.ecosystem-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:640px){.ecosystem-grid,.comfort-grid{grid-template-columns:1fr;gap:22px}.ecosystem-card{padding:24px}.ecosystem-card p{font-size:1rem}.ecosystem-card img{height:180px}.ar-intro{padding:22px}.ar-links .ar-link{flex:1 1 130px}.ar-link{font-size:.86rem}}

/* Product chooser and matched AR models, 1.9.0. */
.device-picker{display:block;margin:8px 0 18px;min-width:0}.device-picker[hidden],.model-colour[hidden],.model-ar-link[hidden]{display:none}.device-picker span{display:block;font-size:.76rem;font-weight:650;color:#344e65;margin-bottom:7px}.device-picker select,.model-colour select{width:100%;max-width:100%;min-width:0;min-height:46px;border:1px solid #c4d2e3;border-radius:10px;padding:10px 28px 10px 12px;background:#fff;color:#17384b;font:inherit;font-size:.82rem;font-weight:600}.device-code{overflow-wrap:anywhere;line-height:1.5}.model-colour{display:flex;align-items:center;gap:12px;margin:15px 0;font-weight:650}.model-colour select{width:auto;flex:1}.model-ar-link{margin-top:18px}.product-copy .model-open{margin-top:18px;margin-bottom:0}.keypad-copy .model-open{margin-bottom:12px}.model-dialog-head .eyebrow{letter-spacing:.12em}.product-model-dialog:has(.model-colour:not([hidden])) .product-model-host{height:min(360px,40dvh)}

/* Compact mobile footer with aligned locations and comfortable link targets. */
@media(max-width:860px){
  .site-footer{padding-top:32px;padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .footer-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px;padding-bottom:24px}
  .footer-layout .footer-brand{grid-column:1/-1}
  .footer-brand>a{max-width:198px;margin-bottom:14px}
  .footer-about{font-size:.88rem;line-height:1.6;max-width:440px;margin:0}
  .footer-heading{font-size:.75rem;letter-spacing:.08em;margin-bottom:8px}
  .footer-list li{font-size:.84rem;line-height:1.4;margin:0}
  .footer-list a{min-height:44px;padding-block:8px}
  .footer-layout .footer-contact{padding-top:2px}
  .footer-contact .footer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
  .footer-contact .footer-list li:last-child{grid-column:1/-1}
  .footer-layout .footer-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(6,auto);gap:0 18px;padding-top:18px;border-top:1px solid var(--panel-border)}
  .footer-layout .footer-address{display:grid;grid-template-rows:subgrid;grid-row:span 6;min-width:0;font-size:.82rem;line-height:1.55}
  .footer-layout .footer-address strong{font-size:.82rem;margin-bottom:8px}
  .footer-address .address-line{display:block;overflow-wrap:normal}
  .footer-bottom{gap:10px 16px;padding-block:18px;font-size:.73rem;justify-content:space-between}
  .footer-bottom>span{line-height:1.55}
  .footer-bottom .motion-toggle,.footer-bottom>a{min-height:44px;display:inline-flex;align-items:center;margin:0}
  .validation-links{margin-block:0 16px}
}
@media(max-width:360px){
  .footer-layout{gap:18px 14px}.footer-layout .footer-addresses,.footer-contact .footer-list{column-gap:14px}
  .footer-layout .footer-address{font-size:.77rem}.footer-list li{font-size:.8rem}
}
.footer-address .address-line{display:block}

@media(max-width:860px){.validation-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.validation-links a{min-width:0;gap:8px;font-size:.72rem;line-height:1.4}.validation-links img[alt="HTML5"]{width:32px;height:32px}.validation-links img[alt="W3C CSS validation"]{width:70px;height:auto}}

/* Stable carousel rows and consistent product motion, 1.9.1. */
.device-carousel{position:relative}
.device-info{flex:1 1 0;min-height:var(--device-info-height,9rem)}
.device-info-measure{position:absolute!important;left:0;top:0;visibility:hidden;pointer-events:none;min-height:0!important;height:auto!important;contain:layout style}
.device-ar-slot{min-height:46px;margin-bottom:18px;text-align:center}
.device-carousel .device-ar{margin:0}
.device-carousel.model-failed .device-hint,.device-carousel.model-failed .device-tools,.device-carousel.model-failed .device-mode{visibility:hidden}
.device-carousel.model-failed .device-hint{display:block}
.device-carousel.model-failed .device-tools{display:flex}
.device-carousel.model-failed .device-mode{display:inline-block}
img.product-motion{animation:product-photo-drift 6.5s ease-in-out infinite;mix-blend-mode:multiply}
.product-card:nth-child(2n) .product-motion,.fob-item:nth-child(2n) .product-motion{animation-duration:7.3s;animation-delay:-2.5s}
.product-card:nth-child(3n) .product-motion,.fob-item:nth-child(3n) .product-motion{animation-duration:6s;animation-delay:-4s}
@keyframes product-photo-drift{0%,100%{translate:0 3px}50%{translate:0 -7px}}
@media(hover:hover) and (pointer:fine){
  :is(.product-card,.service-card,.keypad-photo,.app-photo,.cctv-stage,.fob-item,.access-tag-display figure,.ecosystem-card):hover img.product-motion{animation:product-photo-drift 6.5s ease-in-out infinite,product-hover-bounce .8s ease both}
}

/* One product per family, compact finish swatches and a stable arrow row. */
.device-carousel .device-footer{display:block;min-width:0}
.device-carousel .device-info{height:var(--device-info-height,9rem);min-height:var(--device-info-height,9rem);width:100%}
.device-carousel .device-info-measure{height:auto!important;min-height:0!important}
.device-carousel .device-description{max-width:none}
.device-carousel .device-navigation{display:grid;grid-template-columns:48px 64px 48px;justify-content:center;align-items:center;gap:12px;height:48px;margin:18px 0 0}
.device-carousel .device-navigation[hidden]{display:none}
.device-carousel .device-arrow{width:48px;height:48px}
.device-carousel .device-count{text-align:center;font-variant-numeric:tabular-nums}
.colour-options{display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px;margin:0 0 14px}
.colour-label{font-size:.78rem;font-weight:650;min-width:82px;color:#344e65;text-align:right;margin-right:8px}
.colour-swatch{display:grid;place-items:center;width:44px;height:44px;padding:7px;border:2px solid transparent;border-radius:50%;background:transparent;cursor:pointer}
.colour-swatch span{display:block;width:26px;height:26px;border-radius:50%;border:1px solid #97a5b3;background:#fff}
.swatch-anthracite span{background:#383e44;border-color:#383e44}
.colour-swatch[aria-pressed="true"]{border-color:#2864a9}
.colour-swatch:hover{background:#edf3f9}
.colour-swatch:focus-visible{outline:3px solid #2864a9;outline-offset:3px}
.model-colour[hidden]{display:none}
.fire-page img[src*="apollo-"]:not([src*="callpoint"]){rotate:180deg}

/* Compact, balanced footer across desktop, tablet and phone. */
.site-footer{padding-top:32px}
.site-footer>.container{max-width:1140px}
.footer-layout{grid-template-columns:minmax(180px,1.2fr) minmax(125px,.8fr) minmax(125px,.8fr) minmax(135px,.85fr) minmax(310px,1.9fr);gap:20px;padding-bottom:22px;align-items:start}
.footer-brand>a{max-width:210px;margin-bottom:14px}
.footer-about{font-size:.86rem;line-height:1.6;margin:0;max-width:270px}
.footer-heading{margin:0 0 10px;font-size:.77rem;letter-spacing:.08em}
.footer-list li{margin:0;line-height:1.45;font-size:.85rem}
.footer-list a{min-height:34px;padding-block:5px}
.footer-layout .footer-addresses{min-width:0;gap:18px}
.footer-layout .footer-address{font-size:.81rem;line-height:1.65}
.footer-layout .footer-addresses strong{font-size:.8rem;margin-bottom:10px}
.site-footer .validation-links{margin:0;padding-block:14px;gap:20px;align-items:center}
.site-footer .validation-links img[alt="HTML5"]{width:30px;height:34px;object-fit:contain}
.site-footer .validation-links img[alt="W3C CSS validation"]{width:78px;height:auto}
.site-footer .validation-links a{font-size:.74rem;gap:9px}
.footer-bottom{padding-block:12px;gap:12px;font-size:.73rem}
.footer-bottom .motion-toggle{min-height:40px;padding:8px 12px}
@media(max-width:1100px) and (min-width:641px){
  .footer-layout{grid-template-columns:minmax(180px,1.1fr) repeat(2,minmax(0,1fr));gap:22px 24px}
  .footer-layout .footer-brand{grid-column:1}
  .footer-layout .footer-contact{grid-column:1}
  .footer-layout .footer-addresses{grid-column:2/4;width:100%;justify-self:stretch;border-top:0;padding-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-layout .footer-address{font-size:.84rem}
  .site-footer .validation-links{display:flex}
}
@media(max-width:640px){
  .site-footer{padding-top:26px;padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .footer-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 18px;padding-bottom:16px}
  .footer-layout .footer-brand,.footer-layout .footer-contact,.footer-layout .footer-addresses{grid-column:1/-1}
  .footer-brand>a{max-width:180px;margin-bottom:10px}
  .footer-about{max-width:380px;font-size:.84rem;line-height:1.55}
  .footer-heading{margin-bottom:4px;font-size:.75rem}
  .footer-list a{min-height:40px;padding-block:7px}
  .footer-list li{font-size:.84rem}
  .footer-contact .footer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
  .footer-contact .footer-list li:last-child{grid-column:1/-1}
  .footer-layout .footer-addresses{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding-top:14px}
  .footer-layout .footer-address{font-size:.8rem;line-height:1.5}
  .footer-layout .footer-addresses strong{margin-bottom:7px;font-size:.8rem}
  .site-footer .validation-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-block:12px}
  .site-footer .validation-links a{font-size:.7rem;gap:6px}
  .site-footer .validation-links img[alt="HTML5"]{width:24px;height:28px}
  .site-footer .validation-links img[alt="W3C CSS validation"]{width:62px}
  .footer-bottom{padding-block:10px;gap:6px 12px}
  .footer-bottom>span{line-height:1.5}
  .footer-bottom .motion-toggle,.footer-bottom>a{min-height:40px}
}
@media(max-width:360px){
  .footer-layout{column-gap:12px}.footer-layout .footer-addresses{column-gap:12px}
  .footer-layout .footer-address{font-size:.75rem}.footer-list li{font-size:.8rem}
}

.company-registration{display:block;margin-top:4px;line-height:1.5}.company-registration a{font-weight:650}.contact-registration{font-size:.88rem;margin:14px 0 0;line-height:1.5}

/* Matching paired locations on Contact Us. */
.contact-company{font-weight:700;line-height:1.45;margin:0 0 18px}
.contact-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(6,auto);column-gap:18px}
.contact-address{display:grid;grid-template-rows:subgrid;grid-row:span 6;min-width:0;font-style:normal;font-size:.88rem;line-height:1.6}
.contact-address strong{display:block;color:#2864a9;margin-bottom:8px}
.contact-address .address-line{display:block}
.contact-locations .contact-registration a{display:inline;font-size:inherit}
@media(min-width:1101px){.contact-grid{grid-template-columns:minmax(190px,.65fr) minmax(0,1.35fr)}.contact-grid .contact-box{padding:22px}}
@media(max-width:1100px){.contact-grid{grid-template-columns:1fr}}
@media(max-width:480px){.contact-grid .contact-box{padding:18px}.contact-addresses{column-gap:12px}.contact-address{font-size:.82rem}.contact-company{font-size:.94rem}}
@media(max-width:360px){.contact-address{font-size:.76rem}}

/* Address lines must never inherit a grid row gap. */
.footer-layout .footer-addresses{row-gap:0;align-content:start}
@media(min-width:641px){.site-footer{padding-bottom:0}}
@media(max-width:640px){
  .footer-layout{row-gap:14px}.footer-list a{min-height:32px;padding-block:5px}
  .site-footer .validation-links a{min-height:36px}
  .footer-bottom .company-registration{font-size:.7rem}
}

/* Keep the registration number beneath head office, with aligned address lines. */
.contact-addresses{grid-template-rows:repeat(7,auto)}
.contact-location{display:grid;grid-template-rows:subgrid;grid-row:span 7;min-width:0}
.contact-location .contact-address{grid-row:span 6}
.contact-location .contact-registration{margin:12px 0 0;font-size:.82rem;line-height:1.5}
.contact-registration span{white-space:nowrap}
@media(max-width:360px){.contact-location .contact-registration{font-size:.76rem}}

/* Homepage fire card: show the Apollo detector facing down. */
.service-picture img[src*="apollo-discovery.jpg"]{rotate:180deg}

/* Header logo lifts without changing the header or navigation dimensions. */
.site-header .brand .logo-mark{transform-origin:center;transition:transform .32s cubic-bezier(.2,.9,.3,1.3),filter .25s ease}
@media(hover:hover){.site-header .brand:hover .logo-mark{transform:translateY(-3px) scale(1.055);filter:drop-shadow(0 5px 4px #2864a92b)}}
.site-header .brand:focus-visible .logo-mark{transform:translateY(-3px) scale(1.055);filter:drop-shadow(0 5px 4px #2864a92b)}
.motion-paused .site-header .brand .logo-mark{transform:none;transition:none}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled) .site-header .brand .logo-mark{transform:none;transition:none}}
.policy-links{display:flex;flex-wrap:wrap;gap:4px 24px;border-top:1px solid #d8e2ee;margin-top:24px;padding-top:14px;font-size:.88rem;font-weight:650}
.policy-links a{padding-block:8px;min-height:44px;display:inline-flex;align-items:center}
.policy-layout{display:block;max-width:920px}.policy-layout .article{width:100%;max-width:none;padding:clamp(22px,4vw,48px)}
.policy-layout .article h2{font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.025em;margin-top:1.7em}
.policy-layout .article h3{font-size:1.2rem}.policy-layout .article li{margin-bottom:.7em}
.policy-layout .article code{overflow-wrap:anywhere}.policy-date{color:#4a5e72;font-size:.9rem;font-weight:650}
.policy-layout .button{white-space:normal;text-align:center;max-width:100%}.preference-status{font-weight:650}
@media(max-width:640px){.policy-links{column-gap:18px;font-size:.85rem;margin-top:18px}.policy-layout .article{padding:22px 18px}.policy-layout .article ul{padding-left:22px}}
@media print{.site-header,.site-footer,.cta-section,.mobile-call,.brand-swirls,.clear-motion-preference{display:none!important}.policy-layout{width:100%;max-width:none}.policy-layout .article{border:0;padding:0;box-shadow:none}.page-hero{padding:20px 0}.policy-layout a{text-decoration:underline}}

/* One watch, two supplied screens; the case and controls never change size. */
.app-showcase{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:8px;min-width:0}
.app-showcase .phone-preview{box-shadow:none;border:0;background:transparent;overflow:visible}.app-showcase .phone-preview img{max-height:360px}
.watch-demo{min-width:0;margin:0;width:100%;max-width:270px;justify-self:center;text-align:center}
.watch-stage{width:100%;filter:drop-shadow(0 16px 12px #122a4424);animation:product-photo-drift 6.5s ease-in-out infinite}
.watch-art{display:block;width:100%;height:auto;overflow:visible}.watch-home-screen{opacity:0;transition:opacity .5s ease}.watch-demo.is-home .watch-home-screen{opacity:1}
.watch-indicator-first{fill:#fff}.watch-indicator-second{fill:#373b43}.is-home .watch-indicator-first{fill:#373b43}.is-home .watch-indicator-second{fill:#fff}
.watch-demo figcaption{margin-top:12px;font-size:.85rem;line-height:1.5;min-height:48px;font-weight:650}.watch-caption,.watch-caption-note{display:block}.watch-caption-note{color:#52677b;font-size:.76rem;font-weight:500}
.watch-controls{display:flex;justify-content:center;align-items:center;gap:8px;min-height:44px}.watch-controls[hidden]{display:none}.watch-pages{display:flex;gap:0}.watch-page{display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;padding:0;border-radius:50%}.watch-page span{display:block;width:9px;height:9px;border-radius:50%;background:#9aaabb}.watch-page[aria-pressed="true"] span{background:#2864a9;box-shadow:0 0 0 4px #2864a91c}.watch-play{min-width:68px;min-height:44px;border:0;border-radius:8px;padding:8px 10px;background:#e8eef6;color:#1d4164;font-size:.8rem;font-weight:650}.watch-play:disabled{color:#52677b;cursor:default}
@media(hover:hover){.watch-demo:hover .watch-stage{animation:product-photo-drift 6.5s ease-in-out infinite,product-hover-bounce .8s ease both}}
@media(max-width:640px){.app-showcase{display:block}.app-showcase .phone-preview{display:none}.watch-demo{width:min(270px,100%);margin-inline:auto}.watch-demo figcaption{margin-top:8px}}

/* Clear service answers and consistent product colour controls. */
.service-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:30px}
.service-answer-grid article{background:#fff;border:1px solid var(--line,#dce4ef);border-radius:18px;padding:26px}
.service-answer-grid h3{font-size:1.18rem;line-height:1.4;margin:0 0 14px}
.service-answer-grid p{margin:0}
.service-answer-next{margin:26px 0 0;line-height:1.8}
.card-colours{margin:18px 0 10px;min-height:44px;justify-content:flex-start}
.ar-links a[hidden]{display:none}
@media(max-width:900px){.service-answer-grid{grid-template-columns:1fr;gap:16px}.service-answer-grid article{padding:22px}}

/* Matched device heights, original transparent keypad and a fixed phone viewport. */
.home-jablotron .app-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:45px}
.home-jablotron .app-showcase{--device-height:440px;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);align-items:start;gap:12px;isolation:isolate}
.phone-demo{min-width:0;width:100%;margin:0;text-align:center}
.phone-stage{position:relative;height:var(--device-height);isolation:isolate}
.phone-keypad{position:absolute;left:-8%;top:20%;width:98%;height:auto;max-height:76%;object-fit:contain;background:transparent;border:0;box-shadow:none;z-index:-1;animation:product-photo-drift 6.5s ease-in-out infinite}
.phone-frame{position:relative;float:right;margin-right:3%;height:100%;width:calc((var(--device-height) - 14px)*.4632353 + 14px);padding:7px;background:#17191d;border-radius:39px;box-shadow:0 0 0 1px #899099,0 18px 24px #142a4324}
.phone-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:32px;background:#f2f3f5;container-type:inline-size}
.phone-screen-art{display:block;width:100%;height:100%}
.phone-island{position:absolute;top:.6%;left:34%;width:32%;height:3.4%;border-radius:20px;background:#090a0c}
.phone-security-screen{opacity:0;transition:opacity .5s ease}
.phone-demo[data-screen="1"] .phone-security-screen,.phone-demo[data-screen="2"] .phone-security-screen{opacity:1}
.phone-alert{position:absolute;left:4%;right:4%;top:9%;padding:10px 9px 12px;border-radius:14px;background:#f1a39b;color:#371c21;box-shadow:0 6px 16px #48191b30;font-size:clamp(10px,5.7cqw,13px);line-height:1.5;text-align:left;opacity:0;transform:translateY(-24px);transition:opacity .5s ease,transform .65s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.phone-demo[data-screen="2"] .phone-alert{opacity:1;transform:translateY(0)}
.phone-alert>span,.phone-alert-title{display:block}.phone-alert-title{font-size:1.12em;margin-top:8px}
.phone-alert-head{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:.88em}.phone-alert-head>span:last-child{margin-left:auto;font-size:.85em}.phone-alert-symbol{display:grid;place-items:center;width:19px;height:19px;border-radius:5px;background:#d8202c;color:white;font-weight:800;flex-shrink:0}
.phone-demo figcaption{margin-top:12px;font-size:.85rem;line-height:1.5;min-height:48px;font-weight:650}
.phone-caption,.phone-caption-note{display:block}.phone-caption{min-height:26px}.phone-caption-note{color:#52677b;font-size:.76rem;font-weight:500}
.phone-controls{display:flex;justify-content:center;align-items:center;gap:4px;min-height:44px}.phone-controls[hidden]{display:none}.phone-pages{display:flex}.phone-page{display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;padding:0;border-radius:50%}.phone-page span{display:block;width:9px;height:9px;border-radius:50%;background:#9aaabb}.phone-page[aria-pressed="true"] span{background:#2864a9;box-shadow:0 0 0 4px #2864a91c}.phone-play{min-width:68px;min-height:44px;border:0;border-radius:8px;padding:8px 10px;background:#e8eef6;color:#1d4164;font-size:.8rem;font-weight:650}.phone-play:disabled{color:#52677b;cursor:default}
.home-jablotron .watch-demo{max-width:none}.home-jablotron .watch-stage{height:var(--device-height)}.home-jablotron .watch-art{height:100%;width:100%}.home-jablotron .watch-caption{min-height:26px}
@media(hover:hover){.phone-demo:hover .phone-keypad{animation:product-photo-drift 6.5s ease-in-out infinite,product-hover-bounce .8s ease both}}
@media(min-width:851px) and (max-width:1100px){.home-jablotron .app-showcase{--device-height:370px}.home-jablotron .app-layout{gap:30px}.phone-keypad{left:-6%;top:24%;width:100%}.phone-demo figcaption,.watch-demo figcaption{font-size:.76rem}}
@media(max-width:850px){.home-jablotron .app-layout{grid-template-columns:1fr;max-width:660px;gap:38px}.home-jablotron .app-showcase{--device-height:440px;max-width:600px;width:100%;margin-inline:auto}}
@media(max-width:600px){.home-jablotron .app-showcase{grid-template-columns:1fr;gap:32px;--device-height:420px}.phone-demo{max-width:345px;justify-self:center}.phone-frame{margin-right:9%}.phone-keypad{left:-1%;width:83%;top:18%}.home-jablotron .watch-demo{max-width:280px}.home-jablotron .watch-stage{animation:none}.phone-demo figcaption,.watch-demo figcaption{margin-top:14px}}
@media(max-width:360px){.home-jablotron .app-showcase{--device-height:390px}.phone-frame{margin-right:3%}.phone-keypad{left:-8%;top:22%;width:94%}}
.motion-paused .phone-keypad{animation:none!important}.motion-paused .phone-security-screen,.motion-paused .phone-alert{transition:none}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled) .phone-keypad{animation:none!important}html:not(.motion-enabled) .phone-security-screen,html:not(.motion-enabled) .phone-alert{transition:none}}
